Ruby on rails 如何在rails 4.1中从另一个视图文件夹渲染_表单

Ruby on rails 如何在rails 4.1中从另一个视图文件夹渲染_表单,ruby-on-rails,Ruby On Rails,以手推车的形式: <% for item in @cart.line_items %> <%= item.quantity %> &times;<%= item.menu.menu_item_name %> <%= item.quantity*item.menu.price%> <% end %> &时代; 在菜单/索引中: <%= render partial: 'car

以手推车的形式:

 <% for item in @cart.line_items %>             
 <%= item.quantity %> &times;<%= item.menu.menu_item_name %>
 <%= item.quantity*item.menu.price%>    
 <% end %>

&时代;
在菜单/索引中:

 <%= render partial: 'carts/form'%>


我想在
索引
页面上显示
\u表单

部分的要点是将它们作为代码块,可以在应用程序中的任何位置使用。除非我误解了你的问题,我是否可以建议创建以下目录结构:

app
|-views
   |-cart(or wherever your form currently is)
   |-partials
      |-_partialYouWantToUse.html.erb
通过这种方式,可以使用

<%= render "partials/partialYouWantToUse" %>

你想在应用程序中的任何位置

注意:不使用下划线uu。渲染局部时,只使用一个下划线保存

根据您的评论编辑

可以从任何文件夹渲染局部,只要它相对于视图文件夹。 因此:

只要whateverFolder是视图的直接中心


“部分”或“布局”文件夹是rails的惯例,对查看代码的人很有帮助。它使事情井然有序。

carts/\u form.html.erb
中:

 <% for item in @cart.line_items %>             
 <%= item.quantity %> &times;<%= item.menu.menu_item_name %>
 <%= item.quantity*item.menu.price%>    
 <% end %>
在carts目录中的
*.html.erb
文档中,您可以编写简单的:

<%= render "form" %>


因为它是在当前目录中查找
\u form.html.erb

如果您将表单保存在views目录中的partials文件夹中,您可以在应用程序中的任何位置呈现存储在那里的partials。我很确定您可以渲染“partials/_form”,您不需要将partials保存到属于模型的视图目录中。无需创建partials文件夹,我只想从carts文件夹中生成要呈现的表单。将您想要的代码部分保存为其自己的部分,然后以任何其他方式呈现,而无需创建部分文件夹。例如,使用jqueryYou可能不需要创建部分文件夹,但是你可以通过调用render来呈现这个部分,我认为它包含在目录中。在菜单/index.html.erb中使用此代码时查看我的编辑。我没有收到任何错误,但问题是页面被重定向到carts/show。它不应该被重定向。呈现c:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.1.4/lib/action\u dispatch/middleware/templates/sarces//trace.html.erb(1.0ms)渲染c:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.1.4/lib/action\u dispatch/middleware/templates/routes//u route.html.erb(2.0ms)渲染c:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.1.4/lib/action\u dispatch/middleware/templates/routes//table.html.erb(1.0ms)呈现c:/Ruby193/lib/ruby/gems/1.9.1/gems/actionpack-4.1.4/lib/action\u dispatch/middleware/templates/rescues/routing\u error.html.erb wi精简救援/布局(42.0ms)
<%= render "form" %>