On May 21, 2012, at 8:45 AM, Joao Martins 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?

render :partial => '_host2', :locals => { :host2 => @host }

Have a look at the Rails Guide on Views and rendering for more options.

Walter

> 
> 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.
> 

-- 
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