Order、Address、および User モデルがあります。注文には、請求先住所と配送先住所を含めることができます。ユーザーは、多数の保存済みアドレスを持つことができます。すべてに Address モデルを使用することは理にかなっています。私の懸念は、注文と請求先/配送先住所の関係です。
これがポリモーフィックな関連付けで機能するかどうかはわかりません。
class Order
has_one :billing_address, as: :addressable, polymorphic: true
has_one :shipping_address, as: :addressable, polymorphic: true
end
class User
has_many :addresses, as: :addressable, polymorphic: true
end
class Address
belongs_to :addressable, polymorphic: true
end
これを正しくモデリングしていますか?Railsでこの問題を解決するにはどうすればよいでしょうか?
Orderbelongs_to :billing_address
と を逆にすることもできますが、それは Address モデルにshipping_address
冗長性があることを意味します。user_id