首先,我喜欢inherited_resources
请考虑以下事项:
class Job < ActiveRecord::Base
has_many :inputs, dependent: :destroy
has_one :output
end
class JobsController < InheritedResources::Base
respond_to :json
end
当我请求jobs / 1.json时,我只获取作业对象的JSON。我想要的还有要包含的输入和输出。我通常通过以下方式实现这一目标:
job.to_json(include: [:inputs,:output])
我的问题是用IR实现这一目标的最佳方法是什么?现在,我只是覆盖show,但我想知道是否有更优雅的方式?
谢谢!
答案 0 :(得分:5)
@corroded让我走上正轨。答案是在模型上覆盖as_json。
具体来说,我做了以下事情:
public
def as_json(options={})
super(include: [:inputs,:output])
end