Ruby on rails 如何检查或设置视图模板扩展
我有jbuilder文件:Ruby on rails 如何检查或设置视图模板扩展,ruby-on-rails,jbuilder,Ruby On Rails,Jbuilder,我有jbuilder文件: app/views/api/items/show.json.jbuilder 代码 未工作-模板缺失,但代码 render :show, template: "api/items/show.json" 很好 怎么了?需要检查什么? 查看哪个文件或转储什么?您必须使用该方法告诉Rails您正在响应一个json请求 def show respond_to do |format| format.json end end 您必须使用该方法告诉Rails您
app/views/api/items/show.json.jbuilder
代码
未工作-模板缺失
,但代码
render :show, template: "api/items/show.json"
很好
怎么了?需要检查什么?
查看哪个文件或转储什么?您必须使用该方法告诉Rails您正在响应一个json
请求
def show
respond_to do |format|
format.json
end
end
您必须使用该方法告诉Rails您正在响应一个json
请求
def show
respond_to do |format|
format.json
end
end
另一种方法是传递HTTP头:
headers: {
"Accept": "application/json"
}
它不需要在控制器方法中使用此选项指定格式。
和代码:
render :show
现在工作很好
我已经评论了一些限制HTTP头请求的代码。@Iceman的答案将我转发到正确的方向进行检查,因此他的答案标记为
答案
另一种方式是传递HTTP头:
headers: {
"Accept": "application/json"
}
它不需要在控制器方法中使用此选项指定格式。
和代码:
render :show
现在工作很好
我已经评论了一些限制HTTP头请求的代码。@Iceman的答案将我转发到正确的方向进行检查,因此他的答案标记为
答案
,是否有方法至少为每个控制器类将其设置为全局默认值?我只编写api应用程序,不需要其他类型的答案。那么您是否不使用Rails的api版本?我已经用您有用的答案解决了问题。但原因是另一个。好吧,我很高兴它有帮助。有没有办法至少为每个控制器类全局设置默认值?我只编写api应用程序,不需要其他类型的答案。那么您是否不使用Rails的api版本?我已经用您有用的答案解决了问题。但原因是另一个。好吧,我很高兴这有帮助。