Can i render :partial a view without leading underscore?
i am facing开发者_如何学JAVA a precarious condition here. I need to partially render a page that does not have a leading underscore.
<%= render(:partial => "contact" ,:controller=>"home") %>
this will look for
app/views/home/_contact.html.erb
but i want it to look for
app/views/home/contact.html.erb
is there a way of doing this.?
Thanks
<%= render :file => '/homes/contact' %>
You should not try to bypass the conventions if not really necessary. I guess contact.html.erb contains a form. Put this into app/views/home/_contact.html.erb
and render it in app/views/home/contact.html.erb
.
Or as fl00r answered:
<%= render :file => '/homes/contact' %>
As eteubert points out, one of the strengths of Rails is its opinionated nature. What you are trying to do here is bend that to your will. Don't. If you need to render something in another page as a partial, then you really should follow convention and extract a partial from the original page. If there's a form in that page for example, extract it out into a partial and have the original page render the partial as well.
You'll find the less you try to fight Rails, the easier things become.
精彩评论