1

我有一个具有三个特定状态的模型draftsubmittedpublished

这些状态中的每一个都有特定的验证规则。例如,模型的名称仅在submitted和中是必需的published。类似于以下内容:

validates :name, :presence => true, :unless => :draft?

draft模型在屏幕上时,我想显示必须修复哪些损坏的验证规则,然后才能转换到submitted. 当模型在 中时draft,验证表明它是有效的(这是真的),但我仍然想像它一样显示错误submitted

我真的不知道我应该如何解决这个问题。

4

1 回答 1

1

我为我的一个项目做了类似的事情。就我而言,我有一个可以设置为覆盖状态的虚拟属性。那么在我的“草稿”版本中呢?方法我检查虚拟属性,如果属性“do_full_validation”设置为true,那么我以允许执行验证的方式响应。

于 2012-09-05T13:37:15.287 回答