![]() |
|
![]() ![]() ![]() |
|
Ramira |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 16.9.2009 Репутация: нет Всего: нет |
Объясните, пожалуйста, почему не срабатывают валидаторы.
Есть файл models/login.rb, скажем, следующего вида: class Login < ActiveRecord::Base validates_format_of :email, :with => /\A([^@\S]+)@((?:[-a-z0-9]+\.)+[a-z]{2, }\Z/i end Тем не менее, при регистрации пользователя email ненадлежащего вида все равно воспринимается нормально и пользователь добавляется в БД. Может, надо дописать где-либо что-либо еще? |
|||
|
||||
source777 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1878 Регистрация: 12.3.2007 Репутация: 12 Всего: 56 |
может потому что срабатывают? что это? 1) дисбаланс скобок 2) ([^@\S]+) - email по-твоему должен начинать с пробелов? 3) лень дальше комментировать, это не проверка email, а чёрти-что. Проверь работу валидаторов на: /\A\w+@[-\w]+\.[a-z]{2,6}\Z/i А потом заканчивай изобретать велосипед и используй authlogic, там уже встроена гораздо более адекватная проверка формата email-адреса. -------------------- Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте |
|||
|
||||
Ramira |
|
|||
Новичок Профиль Группа: Участник Сообщений: 4 Регистрация: 16.9.2009 Репутация: нет Всего: нет |
Спасибо за столь ироничный ответ; данную проверку писала не сама, а взяла с сайта - какого, уже не помню.
Суть не в том, что она неправильна, потому что элементарная проверка, скажем, на длину тоже не срабатывает, а "дисбаланса скобок" и прочего "черте-чего" там быть не может. |
|||
|
||||
source777 |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1878 Регистрация: 12.3.2007 Репутация: 12 Всего: 56 |
Ну, что тут можно сказать, видимо ты что-то делаешь не так как надо. Приведённого кода недостаточно, чтобы понять в чём твоя ошибка.
Почитай оф. руководство. P.S. Почему модель называется Login, а речь идёт о сохранении пользователя(User) в БД? -------------------- Если бы программистам платили за то, чтобы убирать код из программы вместо того, чтобы добавлять его, программы были бы намного лучше © Николас Негропонте |
|||
|
||||
![]() ![]() ![]() |
Правила форума "Ruby on Rails" | |
|
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, source777. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Ruby On Rails | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |