Tôi đang cố gắng tối ưu hóa truy vấn của mình trên trang web của mình.tham gia lồng nhau sâu trong activerecord
Tôi có 3 mô hình, hình ảnh, Person, Appearances
xuất hiện hình ảnh has_many, và nhiều người thông qua sự xuất hiện Xuất hiện bảng chỉ có một Person_Id, photo_id
Bây giờ, nếu tôi được làm một tìm kiếm trên một 'người' và tôi muốn tải háo hức xuất hiện và hình ảnh của họ, tôi sẽ làm một cái gì đó như thế này:
Person.joins(:appearances => :photo).limit(5)
Bây giờ, tôi không chắc chắn nếu điều này là lý tưởng, nhưng giả thuyết người của tôi có xuất hiện mà thuộc về một bức ảnh, lần lượt xuất hiện và những người khác. Tôi thậm chí không biết liệu bạn có muốn làm điều này trong vanilla SQL hay không, nhưng tôi chỉ tò mò nếu điều này là có thể.
Person.joins(:appearances => :photo => :appearaces => :person).limit(5)
Cú pháp này kết quả trong lỗi, một lần nữa, tôi chỉ tò mò, tôi đang xử lý nhận được sự xuất hiện và nhân dân một bức ảnh bên trong quan điểm của tôi, tôi chỉ muốn thử nghiệm với thời gian tải và xem nếu điều này là thậm chí có thể.
địa ngục vâng, bạn là một ninja! – jdkealy
cuộc gọi tốt trên typo ... đánh máy từ bộ nhớ và không thể đánh vần rõ ràng. – jdkealy