Ruby on rails 赋值前的ruby/rails变量作用域

Ruby on rails 赋值前的ruby/rails变量作用域,ruby-on-rails,activerecord,active-model-serializers,Ruby On Rails,Activerecord,Active Model Serializers,更新: 谢谢,伙计们,我要说的是: def add_minor if @user.minors.count <= 2 render :json => @user.profile.minors << Minor.find(params[:minor_id]), :status => 200 else render :json => '', :status => 409 end end def add_minor 如果@us

更新:

谢谢,伙计们,我要说的是:

def add_minor
  if @user.minors.count <= 2
    render :json =>  @user.profile.minors << Minor.find(params[:minor_id]), :status => 200
  else
    render :json => '', :status => 409
  end
end 
def add_minor
如果@user.subjectors.count@user.profile.subjectors 200
其他的
呈现:json=>'',:status=>409
结束
结束
这里有没有更好的方法来处理这个res属性的赋值,以使它可以用于渲染调用?总的来说,我只是想知道如何改进这个非常难闻的方法

respond_to :json
def add_minor
  res = ''
  unless @user.minors.count > 2
    minor = Minor.find(params[:minor_id])
    res =  @user.profile.minors << minor
    status = 200
  else
    status = 409
  end
  render :json => res, :status => status
end
respond\u to:json
def添加_小调
res=''
除非@user.subjectors.count>2
minor=minor.find(参数[:minor\u id])
res=@user.profile.res,:status=>status
结束
def add\u minor
如果@user.subjectors.count>2
呈现:json=>'',:status=>409
其他的
@user.profile.minories@user.profile.minories,:status=>200
结束
结束

这将是一个意见问题,但我不会在这个简单的例子中为
res
status
使用变量。如果(
除非
使我的大脑受伤),我会颠倒逻辑,使用
。因此,让
if@user.subjectors.count@user.profile.subjectors 200
else
只是
render:json=>”,:status=>409
。我想整本书会更干净,更容易阅读。
def add_minor
  if @user.minors.count > 2
    render :json => '', :status => 409
  else
    @user.profile.minors << Minor.find(params[:minor_id])
    render :json => @user.profile.minors, :status => 200
  end
end