Tôi có tình huống mô hình dữ liệu lạ để bắt đầu, vì vậy có thể toàn bộ cách tiếp cận của tôi là sai. Đây là những gì tôi đang làm:Lồng nhau ROR: bao gồm để bao gồm các tài nguyên phụ trong to_xml/to_json
Tôi có một lớp được gọi là Chim và một lớp đơn giản có tên là Màu. Khái niệm, mỗi con chim có hai to_many hiệp hội để màu sắc, một cho nam màu sắc và một cho màu sắc nữ. Cách tôi đã xử lý này là sử dụng một mô hình tham gia được gọi là BirdColoration thuộc về một con chim và một màu sắc và có một lĩnh vực boolean bổ sung để cho biết nếu màu sắc là dành cho nam hay nữ. Vì vậy, mỗi con chim thực sự có mối quan hệ to_many với BirdColoration cũng như to_many thành Color: thông qua BirdColoration. Nếu điều này nghe có vẻ hợp lý, hãy tiếp tục đọc. Nếu không, hãy dừng lại và cho tôi biết tại sao nó sai!
Tôi cần có khả năng kết xuất bảng chim như json. Trước đây, khi mỗi con chim chỉ có một to_many liên kết với màu sắc, tôi chỉ có thể sử dụng: bao gồm để bao gồm màu sắc của mỗi con chim trong bãi rác. Bây giờ, tôi đang bao gồm các BirdColorations trong bãi chứa, nhưng tôi vẫn cần phải nhận được ở các mô hình màu sắc mình. Tôi có thể bao gồm riêng màu sắc và màu sắc của từng con chim và sau đó kết hợp chúng trong khi phân tích cú pháp, nhưng tôi sẽ chỉ thay đổi màu sắc của mỗi màu một cách trực tiếp. Một cái gì đó giống như
format.json { render :json => @birds.to_json(:include => [{:bird_colorations => :color}, :seasons, :habitats, :image_holders]) }
Ở trên không có tác dụng, tuy nhiên. Tôi nghĩ rằng điều này là có thể. Bất cứ ai có thể chỉ cho tôi đi đúng hướng để làm thế nào để xử lý này?
Hiện tại, tôi sẽ chỉ bao gồm màu sắc và màu sắc riêng biệt của mỗi con chim và kết hợp chúng trong phân tích cú pháp. Ít nhất tôi biết rằng sẽ làm việc.
Cảm ơn!
Tôi muốn bỏ phiếu nhiều hơn cho điều này !! Cảm ơn! – brutuscat
tôi cũng vậy @brutuscat. Lưu thịt xông khói của tôi! – Rots
Mã trong câu hỏi của bạn trông sạch sẽ hơn rất nhiều, điều này rất khó hiểu. Đặc biệt là vì nếu bạn không có màu tổ chim, ví dụ câu hỏi sẽ hoạt động. Cảm ơn đã đưa ra giải pháp của bạn. Rails nên sửa lỗi này ... – thatmiddleway