在rails 2中编辑表单时验证是错误的吗?

时间:2016-09-30 06:37:59

标签: javascript ruby-on-rails-2

当我在我的模型中使用以下代码时,它可以很好地创建一个新条目但是当我尝试编辑表单时,我收到相同的错误消息,显示创建一个新消息。实际问题是,当我为同一数据编辑相同的表单条目时,它不应该给出该错误。只有在使用以下验证字段创建重复数据时,它才会给出错误消息。

    module StudentModel
    validate :is_valid_true
private
def is_valid_true
  @batch = Batch.find(self.batch_id)
  @batch.students.each do |s|
    if ((s.full_name==self.full_name)&&(s.phone2==self.phone2))
      errors.add_to_base("Student with same Name and Mobile number is already Present in the Batch" )
      break
    end
  end
end

end

1 个答案:

答案 0 :(得分:0)

我建议将validates_uniqueness_of与范围一起使用。我认为这是实现您想要实现的目标的更合适的方式。请参阅:https://www.ampproject.org/docs/guides/analytics/analytics_basics