Проверка формы Ruby on Rails - PullRequest
0 голосов
/ 28 сентября 2010

Я сделал проверку в моей форме, чтобы проверить электронную почту, имя пользователя и имя ... вот код

class User < ActiveRecord::Base
    validates_presence_of :email, :firstname, :username


    validates_format_of :email,
                    :with => /[-!#$&'*+\/=?`{|}~.\w]+@[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])*(\.[a-zA-Z0-9]([-a-zA-Z0-9]*[a-zA-Z0-9])*)+$/,
                    :message => ' appears to be invalid'
end

И, на мой взгляд, часть выглядит так

<%= form_for(@user) do |f| %>
  <% if @user.errors.any? %>
    <div id="error_explanation">
       <ul>
       <% @user.errors.full_messages.each do |msg| %>
         <li>
          <%= msg %>
   </li>
       <% end %>
      </ul>
    </div>

Проблема в том, что проверка не проходит, все ошибки перечислены над формой .... Я хочу, чтобы ошибки отображались в соответствии с текстовыми полями ..... как мне это сделать

Ответы [ 2 ]

5 голосов
/ 28 сентября 2010

Поставьте это рядом с вашим флажком / текстовым полем или другими элементами формы:

<%= @user.errors.on(:attribute_name) %>
0 голосов
/ 28 сентября 2010

проверка модели действительно так.Если вы хотите встроенную проверку формы, вы можете проверить оформление формы JavaScript.Мой любимый плагин jquery's кетчуп:

http://demos.usejquery.com/ketchup-plugin/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...