[英]rails :allow_nil => true not working
我有一個用於圖書清單的模型,在我的表單中,我有一個供isbns使用的地方。 我的模型驗證是為了使用戶只能輸入數字和破折號。 我想要它,以便如果他們將其留空,它仍然可以工作。
listing.rb
validates :isbn, format: { with: /\A[\d-]*\d[\d-]*\z/ }, :allow_nil => true
問題是,當您提交表單並將該空格留空時,會出現錯誤。
1 error prohibited this listing from being saved:
Isbn is invalid
為什么此驗證不允許空白提交?
nil
和blank不是同一件事:如果您的表單提交的是空字符串,則不是nil,但也不符合聲明的格式。 如果要允許空白值,則需要:allow_blank
而不是:allow_nil
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.