Tim_Rand
(Tim Rand)
1
Hi,
From within an action called manager within a controller called storedorders, I want to render to the view for the manger action of controller orders.
It really seems like the following syntax should work:
(within the StoredordersController manager method…)
respond_to do |format|
format.html {render :controller => ‘orders’, :action => ‘manager’}
format.xml { head :ok }
end
But I get the following message:
"Template is missing
Missing template storedorders/manager.erb in view path app/views"
Why is it even looking when I told it to render a different view?
This however works:
respond_to do |format|
format.html {render ‘orders/manager’}
format.xml { head :ok }
end
It really seems like either syntax should be valid. What am I missing?
Thanks,
Tim
Vikrant
(Vikrant)
2
Argument to the "render()" method does not recognises the
":controller" key. You might be confusing it with arguments to
"redirect_to()" method.
Checkout http://api.rubyonrails.org/classes/ActionController/Base.html#M000658
for more information.
Tim_Rand
(Tim Rand)
3
Thanks for answering Vikrant,
Did render change recently, because the internet is littered with
advice saying
render :controller => 'con_name', :action => 'action_name'
is valid syntax. And if you can say render 'controller/action', why
not allow it to be stated the other way too?
Tim
Vikrant
(Vikrant)
4
I don't remember that "render()" ever worked that way. Can I have an
example?