У меня возникла проблема с формой регистрации. Он был создан с помощью SimpleForm, аутентификация выполняется с помощью Devise. При отправке формы, если адрес электронной почты или пароль пуст, он отображает ошибку для этого дважды. В пользовательской модели присутствуют валидации присутствия для имени, фамилии, имени профиля, пароля и электронной почты. Эти повторяющиеся ошибки появляются только в пустых полях электронной почты и пароля. Любые другие пустые поля скажут один раз.
Пример:
# Ошибки, запрещенные данным пользователем от сохранения:
- Электронная почта не может быть пустой.
- Электронная почта не может быть пустой.
- Пароль не может быть пустым
- Пароль не может быть пустым
user.rb:
class User < ActiveRecord::Base
devise :database_authenticatable, :registerable,
:recoverable, :rememberable, :trackable, :validatable
attr_accessible :email, :password, :password_confirmation, :remember_me, :first_name, :last_name, :profile_name
validates :first_name, :last_name, :email, :profile_name, :password, presence: true
validates :profile_name, uniqueness: true,
format: {
with: /^[a-zA-Z0-9_-]+$/
}
has_many :posts
def full_name
first_name + " " + last_name
end
end
регистрация/new.html.erb:
<%= simple_form_for(resource, :as => resource_name, :url => registration_path(resource_name)) do |f| %>
<%= devise_error_messages! %>
<div class="formGroupLeft">
<%= f.input :first_name, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formGroupRight">
<%= f.input :last_name, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formGroupLeft">
<%= f.input :email, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formGroupRight">
<%= f.input :profile_name, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formGroupLeft">
<%= f.input :password, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formGroupRight">
<%= f.input :password_confirmation, :input_html => { :class => 'formGroupInput'} %>
</div>
<div class="formActions">
<%= f.button :submit, "Sign Up" %>
</div>
<% end %>
Почему это может быть? И как я могу его исправить?