On May 21, 1:45 pm, Joao Martins <joao.rib.mart...@gmail.com> wrote:
> I'm starting now with rails, and i have simply question i think.
> I need to render two partials in one ajax call:
>
> I have the following controller:
>
>     # GET /hosts/1
>     # GET /hosts/1.json
>     def show
>        @host = Host.find(params[:id])
>
>        respond_to do |format|
>           format.html #show.html
>           format.js
>           format.json { render :json => @host }
>        end
>     end
>
> And the respective template (show.js.erb):
>
>     $('#tabs-1').html("<%= escape_javascript(render @host) %>");
>
> And a partial file named _host.html.erb
>
> All this works fine. The template "_host.html.erb" is rendered in div
> tabs-1, but now i need to add some other partial template to a
> different id (#tabs-2), but use the same @host
> How can i do this? by default, render @host will use the template file
> _host.html.erb. How can i call a different file like "_host2.html.erb"
> and have the same @host instance available?
>
If you call render '_host2' (or render :partial => 'host2') you'll
still be able to use @host in the template - the instance variable
copying stuff is separate from the template lookup stuff

Fred


> Thanks,
> Joao

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Talk" group.
To post to this group, send email to rubyonrails-talk@googlegroups.com.
To unsubscribe from this group, send email to 
rubyonrails-talk+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-talk?hl=en.

Reply via email to