【发布时间】:2011-02-21 15:10:34
【问题描述】:
给定三个模型:
- 文档
- 资产
- 资产类别
一个文档接受_nested_attributes_for assets(一个文档有_many assets),并且一个asset belongs_to 一个asset category。
我想为每个资产类别的资产属性显示一个字段。
我目前正在实现以下目标。控制器:
def new
@document = Document.new
@asset_categories = AssetCategory.all
@asset_categories.count.times { @document.assets.build }
end
查看(这个例子使用了 Formtastic 提供的语义字段 for 方法,但这只是对 fields_for 的一个薄包装):
i=0
f.semantic_fields_for :assets do |asset_form|
asset_form.input :attachment, :label => @asset_categories[i].name
asset_form.input :asset_category, :as => :hidden, :value => @asset_categories[i].id
i+=1
end
有没有更清洁的方法?我不太喜欢临时变量 i。
【问题讨论】:
标签: ruby-on-rails-3 forms nested-forms formtastic nested-attributes