所以我正在创建一个API。我想用JSON回复我的调查问卷。
我的调查问卷:
我也有问题输入,属于一个问题。
我的API需要返回需要包含的问卷:
使用以下代码我可以包含问题或内容,但不能同时包含两者。
所以我的问题是:
如何将question_input包含在问题中?
def show
@questionnaires = Questionnaire.find(params[:id])
# @questions = @section.questions
respond_to do |format|
#format.json { render :json => @questionnaires.to_json(:include => [:questions]), :callback => params['callback']}
format.json { render :json => @questionnaires.to_json(:include => [questionnaire_items: {include: :question,},], ), :callback => params['callback']}
end
end
感谢您的帮助!
答案 0 :(得分:1)
我认为你想要的是jbuilder(带有rails的默认gem)或活动模型序列化器。
使用jbuilder,您可以创建一个show.json.jbuilder视图,并构建api响应,类似于使用ERB进行html响应的方式。例如:
json.questionaires do
json.name @questionaire.name
json.array! @questionaire.questions do |question|
json.name question.name
end
end
您可以在jbuilder上的文档中阅读更多内容:https://github.com/rails/jbuilder