我的问题是我尝试自定义形式视图。但在我详细介绍之前,我会解释一下我的模型。
我有两个与n:m关系商店和类别
的对象商店模型看起来像这样:
has_many :shop_categories, :class_name => "ShopCategory", :foreign_key => "shop_id"
has_many :categories, :through => :shop_categories, :source => :categories
类别模型看起来像这样:
has_many :shop_categories, :class_name => "ShopCategory", :foreign_key => "category_id"
has_many :shops, :through => :shop_categories, :source => :shops
当然,我的m到n表看起来像
belongs_to :shops, :class_name => "Shop", :foreign_key => "shop_id"
belongs_to :categories, :class_name => "Category", :foreign_key => "category_id"
validates :shop_id, :presence => true
validates :category_id, :presence => true
这很好用,我的商店视图中的以下命令将列出复选框中类别的所有元素:
<%= f.input :categories, :as => :check_boxes, :id => 'shop_categories' %>
这是我的问题: 在类别中,我有类别和图片的名称。现在我想显示选择框旁边的图片。
我也尝试使用<% f.fields_for :categories do |category| %>
但是rails不会遍历所有类别元素。
有没有办法用自动检查对象处理所有Category元素?
如果您需要更多信息,我很乐意提供您理解问题所需的一切。 谢谢你的提示。
答案 0 :(得分:0)
尝试覆盖自定义输入:
# app/inputs/collection_check_boxes_input.rb
class CollectionCheckBoxesInput < SimpleForm::Inputs::CollectionCheckBoxesInput
# [...]
end