【问题标题】:Validation failure when there are no validations for the field in my model当我的模型中的字段没有验证时验证失败
【发布时间】:2011-12-19 21:27:26
【问题描述】:

更新:我是个笨蛋。分发类是子类,这些类正在验证状态字段。

如果在这一点上不明显我是一个完整的 n00b 到 rails,它甚至可能不值得说。 我正在尝试从我创建的表单中对数据库中的表进行一些更改。问题是当我点击提交按钮时,我得到了这个:

Validation failed: Status is not included in the list

我不明白的是(除了整个错误消息 - 什么列表?)我的模型中没有验证状态:

validates_presence_of :resume
validates_presence_of :matching_profile
validates_uniqueness_of :matching_profile_id, :scope => :owner_id
validates_numericality_of :price, :greater_than => 0, :allow_blank => true

我看不到任何关于状态的信息。

更新:

我的模型中的所有关联:

belongs_to :matching_profile, :counter_cache => true 属于_to :resume

更新:

问题似乎实际上出在我的控制器上:

def update_multiple
  @distributions = Distribution.find(params[:distribution_ids])
  @distributions.each do |distribution|
    distribution.update_attributes!(params[:distro].reject { |k,v| v.blank? }) #raising an exception
  end
  flash[:notice] = "Updated Distribution Workflow"
  redirect_to admin_distributions_workflows_path
end

【问题讨论】:

  • 你在模型中定义了attr_accessible吗?
  • 如果您 1/ 已定义 attr_accessible,并且 2/ 未在可访问属性中包含 :status 并且 3/ 在代码中的某处进行批量分配,那么您将收到此错误跨度>
  • 我明白了。好吧,没有其他的 attr_accessible,我计划进行大规模分配 - 但我现在只做一项分配(两行中的一个字段)。我还在模型中添加了attr_accessible :status,只是为了好玩,但没有运气。

标签: ruby-on-rails ruby-on-rails-3 forms validation model


【解决方案1】:

状态字段正在子类中进行验证。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-03-29
    • 1970-01-01
    • 2015-01-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-23
    相关资源
    最近更新 更多