[英]Rails 4: how can I DRY out my multiple form partials?
我的应用程序具有对象Foo和Bar,它们分别具有对应的模型,视图和控制器。
在为每个对象生成支架后,表单部分成为标准配置。
Foo表格局部看起来像...
<div class="form-inputs row">
<div class="col-md-6">
<%= Foo.donut %>
<%= Foo.bagel %>
<%= Foo.cookie %>
</div>
</div>
<div class="form-inputs row">
<div class="col-md-6">
<%= Foo.biscuit %>
<%= Foo.toast %>
<%= Foo.muffin %>
</div>
</div>
条形局部看起来像...
<div class="form-inputs row">
<div class="col-md-6">
<%= Bar.cat %>
</div>
</div>
<div class="form-inputs row">
<div class="col-md-6">
<%= Bar.dog %>
</div>
</div>
我想要统一的格式并且希望它易于维护,但是对象具有不同的属性和不同数量的属性。 有什么办法可以让我的DRY格式化吗?
由于您具有重复的渲染结构,因此您可以将其提取为部分结构,然后传递变量进行渲染。 所以你的局部看起来像
<div class="form-inputs row">
<div class="col-md-6">
<% vals.each do |val| %>
<%= val %>
<% end %>
</div>
</div>
然后在主视图中传递变量进行渲染。
<%= render 'home', vals: [Foo.biscuit, Foo.bagel] %>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.