例如,我想
/apples/123?_format=json
表现得像
/apples/123.json
它呈现 *.json.* 模板,执行 respond_to {|format| format.json {...}} 等
这是可能吗?
谢谢!
例如,我想
/apples/123?_format=json
表现得像
/apples/123.json
它呈现 *.json.* 模板,执行 respond_to {|format| format.json {...}} 等
这是可能吗?
谢谢!
您可以执行以下操作来禁用 Rails 对.ext
格式的自动处理:
constraints format: false do
resources :apples
# ...
end
然后,这有点恶心,但我目前看不到更好的方法,您可以执行以下操作来更新 ActionController 服务的格式:
class ApplicationController < ActionController::Base
before_filter :set_format_from_query_string
private
def set_format_from_query_string
request.format = params.fetch(:_format, 'json')
end
end
这将允许您的respond_to
块根据_format
查询字符串参数进行切换并json
用作默认格式。