does anybody know what the hell “render :action => ‘list’” means???
is “render” a method? is :action a parameter?
thanks a lot.
does anybody know what the hell “render :action => ‘list’” means???
is “render” a method? is :action a parameter?
thanks a lot.
Hi Gonzalo
Render is a method of ActionController and ActionView. The docs can be
found
for the controller version.
The :action =>‘list’ is a parameter hash to tell the method what to
render.
The list action of the controller should be rendered in this case.
There are plenty of good docs available on the rubyonrails.org site to
get
you going. The wiki is a good place to start
Cheers
render is a method (an instance method on ActionController). :action
=> ‘list’ is a literal Hash with one entry. The key is :action (a
Symbol), and the value associated with that key is ‘list’ (a String).
That’s equivalent to:
args = Hash.new
args[:action] = ‘list’
render(args)
…but that’s three times as long, and doesn’t communicate the intent
as well. Hashes are used frequently in Rails because they make method
calls easier to read, and Ruby doesn’t have ‘real’ keyword arguments
like Smalltalk and various other languages.
A fellow newbie writes…
In the words of the API:
" Renders the content that will be returned to the browser as the
response body… Action rendering is the most common form and the type
used automatically by Action Controller when nothing else is specified.
By default, actions are rendered within the current layout (if one
exists)."
In this case it’s rendering the method ‘list’ in the current controller.
See:
http://api.rubyonrails.com/classes/ActionController/Base.html#M000178
for full details.
Hope this helps
CT
thanks a lot, again.
This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.
Sponsor our Newsletter | Privacy Policy | Terms of Service | Remote Ruby Jobs