我在这里面临着不稳定的状况。我需要部分呈现一个没有前导下划线的页面。
<%= render(:partial => "contact" ,:controller=>"home") %>
这将寻找
app/views/home/_contact.html.erb
但我希望它能找到
app/views/home/contact.html.erb
有没有办法做到这一点。?
由于
答案 0 :(得分:62)
<%= render :file => '/homes/contact' %>
答案 1 :(得分:5)
如果没有必要,你不应试图绕过惯例。我想contact.html.erb包含一个表单。将其放入app/views/home/_contact.html.erb
并将其呈现在app/views/home/contact.html.erb
。
或者当fl00r回答:
<%= render :file => '/homes/contact' %>
答案 2 :(得分:4)
正如eteubert指出的那样,Rails的优势之一就是它的固执性。你在这里想要做的就是按照自己的意愿行事。别。如果你需要在另一个页面中呈现某些内容,那么你真的应该遵循约定并从原始页面中提取部分内容。例如,如果该页面中有表单,则将其提取为部分表单,并使原始页面也呈现部分表单。
你会发现你尝试对抗Rails越少,事情变得越容易。