我有一个has_many
关系,我禁用了它:
unless f.object.new_record?
f.inputs do
f.has_many :foos, allow_destroy: false do |foo|
foo.input :bar
end
end
end
目前,一旦我保存了主要对象并返回并编辑,我就可以编辑之前创建的foo
。我不希望这样,只能添加新的。我怎样才能做到这一点?
我可以看到ActiveAdmin提供allow_destroy
和new_record
,但没有类似于allow_edit
的内容。
答案 0 :(得分:0)
原来答案是盯着我的脸:new_record?
。只需检查has_many
项是否为新记录:
f.inputs do
f.has_many :foos, allow_destroy: false do |foo|
if foo.object.new_record?
foo.input :bar
end
end
end