我发现很多关于如何验证字段是否存在(如果另一个条件为真)的帖子,例如:
然而,我该如何反其道而行之呢?
我的用户有一个名为 的属性terms_of_service。
我如何最好地编写一个验证来检查terms_of_service == true是否存在?
您正在寻找验收验证。
您可以这样使用它:
class Person < ApplicationRecord
validates :terms_of_service, acceptance: true
end
Run Code Online (Sandbox Code Playgroud)
或者有更多选项,如下所示:
class Person < ApplicationRecord
validates :terms_of_service, acceptance: { message: 'must be abided' }
end
Run Code Online (Sandbox Code Playgroud)
[编辑]
您也可以将字段设置为单个项目或数组。因此,如果您将该字段存储在隐藏属性中,您可以检查它是否仍然“已接受”,无论您如何描述已接受:
class Person < ApplicationRecord
validates :terms_of_service, acceptance: { accept: ['yes', 'TRUE'] }
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4996 次 |
| 最近记录: |