Rails:无效对象触发错误但仍然保存

时间:2016-01-25 12:40:29

标签: ruby-on-rails validation

我有一个简单的模型:

score.rb

def update
 @patient =  Patient.find(@score.patient_id)
  respond_to do |format|
     if @score.update(score_params)
       format.html {  redirect_to edit_score_path(@score), notice: 'Score was successfully updated.' }
       format.json { render :show, status: :ok, location: @score }
     else
       format.html { render :edit, :patient => @patient, notice: @score.errors.full_messages.to_sentence }
      format.json { render json: @score.errors, status: :unprocessable_entity }
    end
   end
 end

dx1是它的一个属性,我正在对它进行简单的验证。

这是控制器。

score_controller.rb

label for value in array

行为很奇怪,

如果我尝试使用dx1空白提交,则会调用错误,但它仍然保存在数据库中,并且dx1为空。更重要的是,如果我运行这是控制台,则会记录错误"错误"并且对象返回false为有效?但它仍然得到了保存。

为什么会这样?

0 个答案:

没有答案