0
我有一個故事模型和一個後期模型。每個故事都有很多帖子。只返回子節點中的第一個孩子
在我的故事#索引行動中,我希望使用rabl來返回所有@stories,並且@stories中的每個故事還應該包含一個包含其最近創建的帖子中的屬性的子節點。
這裏是我來實現最近我正在尋找:
#show.json.rabl
object @story
attributes :id, :title, :username
child @story.posts.first => :latest_post do
attributes :id, :story_id, :contents, :username
end
這個作品在故事#show行爲的罰款。但是,當我試圖把它與故事#index動作
#index.json.rabl
collection @stories
extends "stories/show"
我收到以下錯誤擴展:
ActionView::Template::Error (undefined method `posts' for nil:NilClass):
1: collection @stories
2:
3: extends "stories/show"
app/views/stories/show.json.rabl:8:in `render'
我相信,我得到這個錯誤,因爲我沒有設置@story實例由show.json.rabl視圖使用的變量。但我不知道如何解決這個問題,並將show.json.rabl傳遞給正確的故事對象。
任何幫助將不勝感激!