2
私は現在、Rails 3.2を使ってアプリケーションを開発していますが、少し問題があります。私はこれが何百回も前に尋ねられたことを知っていますが、私はそれを解決する答えを見つけることができませんでした。ここには同様のERがあります:http://i.stack.imgur.com/x5V0G.pngRails複数テーブルの継承と多相関連
私は何をしようとしていますか。今ではそうのように私のモデルを定義できるようにするとよいでしょう
Supplier.first.theatres.first.events.first.orders
TourEvent.first.orders
Tour.first.orders
を:私は次のように読み取るために協会を期待してい
class Event < ActiveRecord::Base
has_many :orders
belongs_to :eventable, polymorphic: true
# id, eventable_id, eventable_type, title, date, price
end
class TourEvent < Event
belongs_to :tour
# id, tour_id, rendezvous, guide_name
end
class Tour < ActiveRecord::Base
has_many :events, class_name: 'TourEvent'
# id, name, venue, duration
end
しかし、私はそれはSTI」のために予約されます理解します"MTI"ではなく "どのように複雑なミックスインやプラグインを必要とせずに私のソリューションを稼働させるには?それとも不可能なのでしょうか?その後、あなたはイベントの注文にアクセスすることができ
suppliers
has_many :events
events
belongs_to :suppliers
belongs_to :institutions
has_many :orders
# id, supplier_id, institution_id, ...
institutions
# id, type, title, ...
types: theatre, club, tour
orders
belongs_to :events
# id, event_id
:
申し訳ありません - 私はあなたが問題を理解してないと思います。私はもう少し読んだことがありますが、現在、Rails 3.2.1でネイティブに複数表の継承を行うことはできませんと言っています。すてきな追加だろう。 – ollym
私が写真http://i.stack.imgur.com/x5V0G.pngに見るように、あなたはDBサプライヤ、注文、イベントに保存したいと思っています。イベントは機関(例えば、atherやクラブ)に属します。なぜあなたはtheather_eventsやclub_eventsのようなテーブルを追加する必要がありますか?なぜ各機関のテーブルが必要ですか? – ryaz
各「機関」には異なる情報が格納されています。私はそれを区別することが重要です。 – ollym