我正在创建一个使用 Ruby/Rails/HAML 存储卡片的系统 - 在这种情况下,有一个 Card 类,它有很多颜色(这也是一个类)。创建和编辑卡片时,我使用 Cocoon gem 来动态添加颜色关联。
我遇到的问题是,在卡片模型中,一张卡片最多只能有 5 种颜色。然而,界面允许添加无限的颜色,从而导致错误。
Cocoon中有没有办法限制可以添加到表单中的关联数量,从而不超过这个限制?
这是添加/编辑卡片的表单代码
= simple_form_for @card, multipart: true do |c|
= c.input :name, label: "Name of the card"
= c.input :cost, label: "Cost of the card"
#colours
= c.simple_fields_for :colours do |colour|
= render "colour_fields", f: colour
.links
= link_to_add_association 'add colour', c, :colours
这是 colour_fields 表格
.nested-fields
= f.input :value, as: :select, collection: Colour::VALUES, selected: f.object.value, include_blank: false
= link_to_remove_association "remove colour", f
提前致谢。