我在我的模型中有3個字段,我至少需要其中的一個字段 - 如何使用內置驗證來實現這一點?ActiveModel ::驗證3個字段中的任何一個
0
A
回答
1
創建一個自定義的驗證:
validate :one_of_three
def one_of_three
errors.add(:base, 'Must have one of foo, bar or wee') unless foo || bar || wee
end
0
有一種方法有條件驗證取決於另一個存在一個屬性的存在:
validates :attr_1,
presence: true,
if: ->(model) { model.attr_2.blank? && model.attr_3.blank? }
validates :attr_2,
presence: true,
if: ->(model) { model.attr_1.blank? && model.attr_3.blank? }
validates :attr_3,
presence: true,
if: ->(model) { model.attr_1.blank? && model.attr_2.blank? }
1
嘗試以下。
validate :attributes_presence
def attributes_presence
errors.add(:base, 'At least one attribute must be present') if attr1.blank? && attr2.blank? && attr3.blank?
end
相關問題
- 1. Rails 3--驗證兩個字段中的一個已完成
- 2. jQuery驗證只驗證一個字段
- 3. 導軌3驗證,多個字段
- 4. Ecto中的條件驗證需要2個字段中的任何一個
- 5. 驗證(以空白字段)jquery-1.9.1.min中兩個字段中的任何一個字段
- 6. 驗證兩個字段中的一個字段是否爲零
- 7. JIRA問題可以驗證一個子任務中的字段
- 8. jQuery驗證:3個字段一個錯誤消息
- 9. 如何驗證3個字段中的日期輸入?
- 10. Rails驗證兩個字段中任何一個的存在(異或)
- 11. 同一個驗證多個字段
- 12. Jquery驗證任何一個必填字段
- 13. Rails 3對一組字段的驗證
- 14. 公式驗證一個字段對另一個字段
- 15. Laravel驗證:僅在另一個驗證字段時驗證字段
- 16. CakePHP 3:如何使用驗證強制兩個字段中的任意一個不爲空
- 17. 兩個字段的驗證
- 18. rails驗證一個字
- 19. REST和一個字段的驗證
- 20. django跳過一個字段的驗證
- 21. ActiveRecord的字段驗證一個其他
- 22. 一個jsp表格的字段驗證
- 23. 一個IP地址的字段驗證
- 24. 基於另一個字段的驗證
- 25. 一次驗證一個字段
- 26. 在PLSQL中驗證一個由3個字段組成的日期
- 27. 如何驗證與ASP中的另一個值相關的字段MVC 3
- 28. 使用asp.net驗證器驗證2個字段中的1個
- 29. jquery驗證:我如何使一個字段驗證變化?
- 30. HTML MVC 3字段驗證
請修改您的問題以包含您迄今爲止編寫的代碼。 –
你需要添加你自己的驗證。這個用例沒有開箱。 –
您已經詢問了關於內置驗證的內容,但您選擇的答案與此不符 –