私のモデルには、多数の画像を持つ店舗が含まれています。 (イメージを持つことができる他のモデルもあります。) Storeに割り当てられているすべての画像のうち、最初にStoreのページに表示される「メイン画像」を設定したいと思います。それ以外の場合、主画像は他の画像と同じように扱われるべきです。Rails:店舗には多くの画像があります。 "メインイメージ"を定義するベストプラクティス?
ベストプラクティスは何ですか?
モデルは、基本的に次のようになります。
class Store < ActiveRecord::Base
has_many :images, as: :imageable, dependent: :destroy
end
と
class Image < ActiveRecord::Base
belongs_to :imageable, polymorphic: true
end
代わりに、Image idを含むStoreモデルに外部参照を追加することを考えました。私は、 "main_image_id"が "imageable"が正確にそのストアであるImageを参照することを検証しなければならないでしょう。しかし、私はこのシナリオでベストプラクティスとみなされるものに固執したいと思います。 – rubykatz