3 つのテーブル (products、orders、products_orders) があります。3 つのモデル ファイル (product.rb、order.rb、product_order.rb) があります。
したがって、3クラス
class Product < ActiveRecord::Base
attr_accessible ...
has_many :product_orders
has_many :orders, :through => :product_orders
end
class Order < ActiveRecord::Base
attr_accessible ...
has_many :product_orders
has_many :products, :through => :product_orders
end
class ProductOrder < ActiveRecord::Base
attr_accessible :order_id, :product_id, ...
belongs_to :product
belongs_to :order
end
最初の質問.. products_orders テーブルに主キー (id) を問題なく設定できますか? 考えられる問題についてhttp://guides.rubyonrails.org/association_basics.htmlを読みましたが、よくわかりません。
2番目の質問.. ER図(rake erd)を生成しようとすると、次のように教えてくれます:
警告: 無効なモデル ProductOrder を無視します (テーブル product_orders は存在しません)
# 不足している 's' は、修正方法がわからない問題です (モデル名がテーブル名と異なると混乱するため、アンダースコア モデルが必要なだけです)
警告: 注文の無効な関連付け :product_orders を無視しています (モデル ProductOrder は存在しますが、ドメインには含まれていません)
警告: Product の無効な関連付け :product_orders を無視しています (モデル ProductOrder は存在しますが、ドメインには含まれていません)
助けてください、それは私の最初のテストレールアプリです