渲染部分UI元素

在rails中,我经常需要声明在许多模型中使用的部分。 例如,有一个部分我想要一个包裹在按钮周围的表单,这样我就可以传入一个控制器,一个动作和一个对象,并将该对象发送到该控制器的动作。 现在这不是我的任何模型所特有的。 在模型的文件夹中声明这个部分文件(_processor_button.html.erb)似乎不合适。

你有什么建议是放置这个文件的最佳位置,以及如何从那里调用它,你建议采用一种完全不同的方式来接近上面提到的例子吗?

我将常用的部分存储在views/shared/并以这种方式调用它们:

 render :partial => "/shared/partial_name" 

我总是把这些部分放在:app / views / shared /

假设部分喜欢;

 ... shared/_my_form.html.erb ... <%= form_for(my_obj) do %> ... ... 

然后在您的视图中使用不同的“my_obj”渲染此部分

 ... posts/form.html.erb ... <%= render :partial => "/shared/my_form", :locals => { :my_obj => @post } %> 

或者喜欢:

 ... users/form.html.erb ... <%= render :partial => "/shared/my_form", :locals => { :my_obj => @user} %>