Ruby on rails 如何验证模型中的方法参数?
以下是我的尝试:Ruby on rails 如何验证模型中的方法参数?,ruby-on-rails,Ruby On Rails,以下是我的尝试: class Answer < ActiveRecord::Base validate :upd def upd unless question_id.nil? || status.nil? redirect_to :action => 'index' else return true end def update_status(question_id, status) if question.valid? && status.vali
class Answer < ActiveRecord::Base
validate :upd
def upd
unless question_id.nil? || status.nil?
redirect_to :action => 'index'
else return true
end
def update_status(question_id, status)
if question.valid? && status.valid?
@update = Question.find(question_id)
@update.update_attributes(:question_status => status)
end
end
end
class-Answer“index”
否则返回true
结束
def更新状态(问题id,状态)
如果问题有效&&状态。有效吗?
@更新=问题。查找(问题\u id)
@update.update_属性(:question_status=>status)
结束
结束
结束
我得到未定义的局部变量或方法“status”模型不应该重定向,控制器应该重定向。您可以通过改为写入
(status&&status.valid?
来修复状态无效错误。不确定您的总体意图是什么。关于重定向,我理解。在更新之前,我应该检查我从controllerIs'status'发送的问题id和状态参数,以及答案模型的属性?。为什么要更新问答模型中的问题?更新状态方法应移至问题模型