Rules в модели

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Rules в модели

Сообщение kovalenkoA »

Всем привет! Есть предложение выкладывать сюда различные полезные проверки с помощью Rulesов.
Вот например недавно узнал что емаил можно проверить вот таким минимализмом

Код: Выделить всё

        array('username', 'email'),
 
а на то что поле должно быть уникально вот эта радость

Код: Выделить всё

 array('username', 'unique'),
 

Еще очень интересуют такие проверки как значение по умолчанию in и т д
вот все виды а примеров не нашел ( а сам допереть не могу как их использовать
http://yiiframework.ru/doc/guide/ru/form.model
Аватара пользователя
slavcodev
Сообщения: 3134
Зарегистрирован: 2009.04.02, 21:42
Откуда: Valencia
Контактная информация:

Re: Rules в модели

Сообщение slavcodev »

Ну чтож, открою для тебя еще немного радости
http://yiiframework.ru/doc/cookbook/ru/ ... .reference
Жду Yii 3!
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Re: Rules в модели

Сообщение kovalenkoA »

вау
Аватара пользователя
Svyatov
Сообщения: 459
Зарегистрирован: 2010.08.12, 14:50
Откуда: Санкт-Петербург
Контактная информация:

Re: Rules в модели

Сообщение Svyatov »

Есть предложение выкладывать сюда различные полезные проверки с помощью Rulesов.
Есть встречное предложение - читать документацию внимательно.
Аватара пользователя
BuCeFaL
Сообщения: 447
Зарегистрирован: 2010.03.17, 21:22
Откуда: Kiev
Контактная информация:

Re: Rules в модели

Сообщение BuCeFaL »

И еще чуть чуть
http://www.yiiframework.com/doc/api/1.1/CValidator
* required: CRequiredValidator
* filter: CFilterValidator
* match: CRegularExpressionValidator
* email: CEmailValidator
* url: CUrlValidator
* unique: CUniqueValidator
* compare: CCompareValidator
* length: CStringValidator
* in: CRangeValidator
* numerical: CNumberValidator
* captcha: CCaptchaValidator
* type: CTypeValidator
* file: CFileValidator
* default: CDefaultValueValidator
* exist: CExistValidator
* boolean: CBooleanValidator
* date: CDateValidator
* safe: CSafeValidator
* unsafe: CUnsafeValidator
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Re: Rules в модели

Сообщение kovalenkoA »

Все равно уверен кому нить да пригодятся рулесы, буду выкладывать сюда все полезные проверки

array('status', 'in', 'range' => array(0, 1, 2)) Этим можно проверить входит ли в диапазон ваших числе приходящее число от пользователя

array('tags', 'match', 'pattern' => '/^[A-Za-zА-Яа-яs,]+$/', 'message' => 'Поле для тегов содержит недопустимые символы.'), тут не думаю что ненадо объяснять и так понятно что пройдут только символы из допустимого выражения
systemiv
Сообщения: 360
Зарегистрирован: 2011.06.26, 22:55
Откуда: Липецк
Контактная информация:

Re: Rules в модели

Сообщение systemiv »

Это наверное 3-4 тема про rules, за тот месяц что я здесь))
Почему люди не читают документацию?
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Re: Rules в модели

Сообщение kovalenkoA »

У меня к примеру проблема с регулярными выражениями никак не могу их одолеть
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Re: Rules в модели

Сообщение kovalenkoA »

Вот к примеру сейчас стоит задача чтобы если в строке пришло "(Пример) .." выдавало ошибку, регулярными я незнаю как это сделать
kovalenkoA
Сообщения: 52
Зарегистрирован: 2011.01.03, 11:33

Re: Rules в модели

Сообщение kovalenkoA »

Кто нибудь поможет сделать так что бы если в сначале строке есть (ПРИМЕР) то выдавашь ошибку

array('name_company,address', 'match', 'pattern' => '/^[^(ПРИМЕР)]/'),

Так не получается, делал по справочнику что дали выше...
TM123
Сообщения: 608
Зарегистрирован: 2011.06.09, 11:18

Re: Rules в модели

Сообщение TM123 »

Это наверное 3-4 тема про rules, за тот месяц что я здесь))
Почему люди не читают документацию?
Люди читают ее, но она не очень хорошо написана, практически нет примеров. Имеющаяся документация рассчитана даже не на программистов - это больше справочник по движку для тех кто уже в теме. Я пока не был в теме, испытывал массу вопросов и проблем, лепил костыли и выкручивал руки фреймворку смотря исходный код, потом, когда логика разработчиков стала понятна, стало очень легко и просто, а ответы на большинство вопросов находились за 5 минут, вместо часа копания в инете и исходниках.
Ответить