我有一個Rails應用程序,使用Devise進行用戶註冊/管理。url輸入字段在客戶端驗證,但沒有其他字段是
在我的用戶模型中,我有以下幾點:
validates :first, presence: true
validates :last, presence: true
validates :email, presence: true, format: {with: VALID_EMAIL_REGEX}, uniqueness: {case_sensitive: false}
validates :url, format: {with: NO_SPACES_REGEX}, presence: true
在填寫表格,如果我不填寫網址欄,並提交表單,我收到以下消息(氣球指向URL輸入框):
請輸入網址。
這發生在客戶端。如果填寫表單中的URL字段以及其他任何必填字段,表單將提交,然後我會在單獨的紅框中收到消息,要求我輸入缺少的值。
任何想法爲什麼url字段是唯一一個驗證本地,提交表單前,但沒有其他形式是?
這個領域唯一的其他獨特之處是它的形式分配給它的值:
<div class="control-group">
<div class="control-label"><%= f.label :url, URL_STR %></div>
<div class="controls"><%= f.url_field :url, :value => "http://", :class => "request-text-line" %></div>
</div>
其他領域都沒有分配給它們的值。