has_many_and_belongs_to と店舗との関係にある家具オブジェクトを作成しようとしています。これが私のモデルです。
class Furniture < ActiveRecord::Base
attr_accessible :area, :description, :name, :size
has_and_belongs_to_many :stores
end
私の問題は、新しい家具を作成する方法がわからないことです。これは、チェック ボックスを使用して家具を 1 つまたは複数の店舗に関連付けようとしたときに、次のエラーが発生したためです: undefined method merge for #<Store:0x007ff16ae27e40>
.
これらは、フォームを使用したビューと、新しいアクションと作成アクションを使用したコントローラーです。
ビュー:
<%= form_for @furniture do |f| %>
<%= f.label :name %>
<%= f.text_field :name %> <br><br>
<%= f.label :description %>
<%= f.text_field :description %> <br><br>
<%= f.label :size %>
<%= f.text_field :size %> <br><br>
<% @store.each do |store| %>
<div>
<%= f.check_box :stores, store %>
<%= store.name %>
</div>
<% end %>
<%= f.submit %>
<% end %>
コントローラー:
def new
@furniture = Furniture.new
@store = Store.order('name ASC')
end
def create
@furniture = Furniture.create(params[:furniture])
redirect_to admins_path
end
どうすれば解決できますか?? この関係で新しいオブジェクトを作成するための提案はありますか??
どうもありがとうございました
編集:家具と店の間に結合テーブルがあります