我有一個用戶對象和消息對象,其中消息模型中有user_id。當我做Message.find時(1)我如何獲得用戶對象作爲json對象的一部分,或者什麼是注入的正確方法?所以它會有整個用戶對象,而不僅僅是user_id從軌道模型建立的Json對象3
我知道我可以從@ message.user得到它,但不知道什麼是正確的注入方式。
我有一個用戶對象和消息對象,其中消息模型中有user_id。當我做Message.find時(1)我如何獲得用戶對象作爲json對象的一部分,或者什麼是注入的正確方法?所以它會有整個用戶對象,而不僅僅是user_id從軌道模型建立的Json對象3
我知道我可以從@ message.user得到它,但不知道什麼是正確的注入方式。
我認爲你正在尋找:
Message.find(1).to_json(:include => :user)
當您執行Message.find(1, :include => :user)
時,與message
對象關聯的對象user
也會被加載。這被稱爲急切加載。兩個對象被加載一個查詢。然後你可以用它來構建Json對象。 Read about eager loading!