【发布时间】:2013-06-25 08:31:14
【问题描述】:
我正在尝试使用 Ruby on Rails 构建 JSON API 端点。
我按照下面的说明为我的模型创建了 JSON API http://railscasts.com/episodes/350-rest-api-versioning?view=comments/
我有以下控制器:
/api/v1/movies_controller.rb
class MoviesController < ApplicationController
def index
if params[:p].nil?
p = 1
else
p = params[:p].to_i
end
@movies = Movie.order("id DESC").page(p)
end
def show
@movie = Movie.find(params[:id])
end
end
我需要将其与电影 has_many :genres 和 Genre belongs_to :movie 的类型对象结合起来
但是,我无法使用以下内容将流派与电影对象加入 JSON 输出:
@movie = Movie.find(params[:id], :joins => :genres)
我确实注意到以下命令能够在 ruby 控制台中生成连接输出
@movie.to_json(:include=>:genres)
但是在控制器中添加这个并不会显示额外的流派字段
有人可以帮帮我吗?
谢谢!
【问题讨论】:
-
我认为你的
:joins语句应该是:includes,因为它实际上包含了相关的记录。
标签: json api activerecord ruby-on-rails-3.2