我有一个非常基本的问题,但似乎无法让它正常工作。
这是设置 -
class Recipe < ActiveRecord::Base
has_many :recipeIngredients
has_many :ingredients :through => :recipeIngredients
end
class Ingredient < ActiveRecord::Base
has_many :recipeIngredients
has_many :recipes :through => :recipeIngredients
end
class RecipeIngredients < ActiveRecord::Base
belongs_to :recipe
belongs_to :ingredients
end
每个成分都有一个 ID 和一个名称,Recipe 有一个 ID 和一个 Title,RecipeIngredients 有 recipe_id、component_id、amount
当我尝试使用
@recipe = Recipe.find(params[:id])
render :json => @recipe, :include => :ingredients
我得到了我的配料,但无法从 RecipeIngredients 访问数量或名称。- 这个输出
{
"list_items": {
"id": 1,
"title": "Foo",
"description": null,
"ingredients": [
{
"id": 1
},
{
"id": 2
},
{
"id": 3
},
{
"id": 4
}
]
}
}
我怎样才能在成分和recipeIngredients之间建立关系,以便在调用:ingredients时我得到类似 -
{
"id":1,
"name":"foo",
"amount":"2 oz"
}
谢谢!