Forum: Ruby on Rails Passing values to a Partial

Announcement (2017-05-07): is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see and for other Rails- und Ruby-related community platforms.
Kent B. (Guest)
on 2006-03-31 03:07

I cannot seem to find out how to pass in a value to a partial. Can
anyone help me?

What I am doing(in the code below) is calling a function in my
controller called setobject. This function just redraws the partial. I
want to be able to change the value @objectname, redraw my partial and
have it be able to use that value. The first the page is drawn it works,
but when i call setobject it says that @objectname is null in my partial
and it throws an error.

Code follows.

In my index.rhtml I have the following:
  <%= render :partial => "properties" %>

with some other code later on in the file
<%= drop_receiving_element "dcwindow",
		      :update => "items", :url => { :action => "setobject" },
		      :accept => "products", :hoverclass => "cart-active",
		      :loading => "'indicator')",
		      :complete =>

In _properties.rhtml I have:
    command = @objectname
Which I then use later on.

In my controller file I have:
  def index
    @objectname = "Plane"
  def setobject
    render :partial => "properties"

Thank in advance!
John S. (Guest)
on 2006-03-31 03:45
(Received via mailing list)
Here are some details about render():
Specifically, the Rendering Partials section.
# Renders the same partial but also makes a local variable available
to it
   render :partial => "win", :locals => { :name => "david" }

if the following change in the controller doesn't work
> render :partial => "properties", :locals => {:@objectname =>
> @objectname}
you might have to do
> render :partial => "properties", :locals => {:objectname =>
> @objectname}
and in _properties.rhtml change
> <%
>     command = @objectname
> %>
> <%
>     command = @objectname || objectname
> %>


John S.
Computing Staff - Webmaster
Kavli Institute for Theoretical Physics
University of California, Santa Barbara
(805) 893-6307
This topic is locked and can not be replied to.