[英]Rails 4: validating a nested model
我有一個嵌套屬性的驗證器:
validates_numericality_of :rate, greater_than: 0, if: -> {self.user.is_tutor?}
其中is_tutor是父表單中的布爾值字段。
盡管進行了許多嘗試,但驗證似乎並沒有按照我的意願進行。 我希望它采用傳遞給更新后的表單的params [:is_tutor]值,但是我的驗證器始終在檢查存儲在數據庫中的值。
如何將:if =>設置為布爾值is_tutor的params哈希值? 我已經嘗試過使用params [:is_tutor],但是沒有用。
我也嘗試過把它放在父母那里:
validates_numericality_of :rate, greater_than: 0, if: :is_tutor?
這就是我想要的:is_tutor的當前值。 但是,它找不到:rate符號,因為它是一個嵌套屬性。
有什么想法嗎? 謝謝!
盡管我沒有測試,但這應該可以工作。
validates_numericality_of :rate, greater_than: 0, if: -> (r) {r.user.is_tutor?}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.