在以下字段上给定验证:
validates :entity_type, inclusion: { in: %w(1 2), message: "is invalid" }
如果用户输入该字段的零是
,将返回的错误消息"不能空白","
如何更改此验证,以便只有"零是该字段的输入值",只能返回"空白"?
在这种情况下,我们不希望NIL成为有效的值,只是为了清理验证消息传递。
我在任何地方都没有看到任何文档,所以想给出答案。
答案是将allow_nil: true
与包含验证器一起使用。
validates :entity_type, inclusion: { in: %w(1 2), message: "is invalid" }, allow_nil: true
使用此手段,如果为该字段提供了零值,则只有"不能为空白"消息将从验证器中返回,而非nil无效的值将继续按正常运行。