我是Ruby on Rails的新手。
此代码返回DoubleRenderError
:
class PostapisController < ApplicationController
def method1
method2()
render json: {:success: false}
end
def method2
render json: {:status => 'ok'} and return
end
end
为什么会返回DoubleRenderError
?如果我仍然希望method1()
和method2()
同时拨打render
,我该如何解决?
答案 0 :(得分:1)
&#34;渲染&#34;和&#34; redirect_to&#34;是生成对服务器收到的请求的响应的两种方法。服务器只能为每个请求提供一个响应,因此您无法呈现两次。
在您的情况下,您应该能够理解发送{:success: false}
响应并发送{:status => 'ok'}
响应是没有意义的:它必须是一个或者另一个,对吗?这不是一个东西,它只是一个网络的东西。每个请求一个响应。
我不知道你想要实现什么,所以除了告诉你在开始使用Rails之前阅读一些关于Rails的更基本的东西之外,不能再进一步建议。< / p>