请考虑以下事项:
class MyController < ApplicationController
...
def method1
@data=@might_be_awesome_might_not
validate_me
do_some_other_cool_stuff
render json: { 'Success!' }
end
def validate_me
return if @data == 'Awesome'
render json: { 'Crap! Not Valid' }
end
...
end
我想知道如何在渲染错误后正确退出,以便rails不会抱怨两个渲染。我试过了 渲染json:{'废话!无效'}&amp;&amp;出口
这破坏了我的测试套件。它不会因错误而破坏测试,它们只是不运行。顺便说一句,这只是一个永远不会运行的例子,可能是语法问题,代码来证明我的问题。
答案 0 :(得分:1)
您可以render
到callback
:
class MyController < ApplicationController
before_action :set_data, :validate_me
...
def method1
do_some_other_cool_stuff
render json: { 'Success!' }
end
private
def set_data
@data = @might_be_awesome_might_not
end
def validate_me
render json: { 'Crap! Not Valid' } unless @data == 'Awesome'
end
...
end