Passing values to a Partial


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!

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 =>
you might have to do
render :partial => “properties”, :locals => {: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
[email protected]
(805) 893-6307

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs