私はこのようなスキーマを持っています。
managers
has_many :emails
has_many :stores
emails
belongs_to :manager
stores
belongs_to :manager
belongs_to :region
regions
has_many :stores
has_many :readings
readings
belongs_to :regions
経営者の方に鑑定をお願いしたいです。SQLでは、私はこのようなことをします。
SELECT * FROM managers
JOIN stores ON stores.manager_id = managers.id
JOIN regions ON stores.region_id = regions.id
JOIN readings ON readings.region_number = regions.number
WHERE
manager.name = 'John Smith'
AND
regions.number = '1234567'
LIMIT 100
アクティブレコードでこれを行う方法がわかりません。私はhttp://guides.rubyonrails.org/active_record_querying.htmlとhttp://guides.rubyonrails.org/association_basics.htmlを理解しようとしていますが、それは沈んでいません。別の視点。
私はこのようにデータにアクセスすると思っていましたが、それがどのように機能するのか理解していないと思います.
managers.name
managers.stores.name
managers.stores.regions.readings.limit(10)
私はずっと醜いこのようなことをしなければなりませんでした。
managers.first.stores.first.regions.first.readings.limit(10)