我想要一个Rails控制器(所有这些,实际上,它是一个API)来永远呈现JSON.
我不希望Rails返回"找不到路由",或者尝试找不到HTML模板,或者返回406.我只是希望它自动并始终呈现JSON,例如从RABL或JBuilder视图.
这可能吗?相关问题似乎有答案,具有上述缺点.
据我所知,json可以在没有模板的情况下在 Rails 上呈现,使用以下代码:
module Overrides
class SessionsController < DeviseTokenAuth::SessionsController
def destroy
render json: {
errors: 'Test 200'
}, status: 200
end
Run Code Online (Sandbox Code Playgroud)
我也试过以下:
respond_to do |format|
format.json { render :json => {success:true}, status: 200}
end
Run Code Online (Sandbox Code Playgroud)
没有结果。我仍然遇到同样的错误。
Started DELETE "/auth/sign_out" for 127.0.0.1 at 2016-04-28 20:29:27 +0300
Processing by Overrides::SessionsController#destroy as json
User Load (0.0ms) SELECT "users".* FROM "users" WHERE "users"."uid" = $1 LIMIT $2 [["uid", "demo"], ["LIMIT", 1]]
(0.0ms) BEGIN
SQL (0.5ms) UPDATE "users" SET "tokens" = $1, "updated_at" = …Run Code Online (Sandbox Code Playgroud)