Yii Framework Forum: Reguły Tylko W Przypadku Ich Wymagania - Yii Framework Forum

Jump to content

Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Reguły Tylko W Przypadku Ich Wymagania Rate Topic: -----

#1 User is offline   andrzej1_1 

  • Junior Member
  • Pip
  • Yii
  • Group: Members
  • Posts: 81
  • Joined: 16-April 13

Posted 18 August 2013 - 03:14 AM

Witam. Ostatnio zrobiłem porządek z kilkudziesięcioma regułami, lecz nie działa to tak jak chce. Mam przykładowo taką regułę:
array('password', 'match', 'pattern'=>'/^.*(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$/', 'message'=>'Hasło jest nieprawidłowe.'),

oraz dla scenariusza userEdit:
array('email, name, surname', 'required', 'on' => 'userEdit'), 


Oczekiwałem że skoro pole w scenariuszu userEdit nie jest wymagane to nie będzie sprawdzane z patternem. Jednak gdy użytkownik próbuje zmienić dane, to wyskakuje 'Hasło jest nieprawidłowe.'. Przerabianie wszystkich reguł na 'on' jest głupie, ponieważ mam dla modelu użytkownika aż 8 scenariusz i przy każdej zmianie kod się gmatwa.

Czy jest na to jakiś sposób żeby tylko pola wymagane były walidowane??
0

#2 User is offline   nineinchnick 

  • Master Member
  • PipPipPipPip
  • Yii
  • Group: Members
  • Posts: 622
  • Joined: 12-September 11
  • Location:Bialystok, Poland

Posted 18 August 2013 - 03:28 AM

W wersji 1.1.13 do reguł walidatorów dodano właściwość 'except'. Użyj jej np. w regule do hasła:
array('password', 'match', 'pattern'=>'/^.*(?=.*\d)(?=.*[a-z])(?=.*[A-Z]).*$/', 'message'=>'Hasło jest nieprawidłowe.', 'except'=>'userEdit'),


BTW co do komunikatu, moim zdaniem powinień być bardziej informacyjny, tzn zasugerować dlaczego hasło jest nieprawidłowe. Jako użytkownik nie wiedziałbym co mam z tym zrobić. No chyba, że jest to napisane gdzieś obok pola.
Don't be a dick.
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

1 User(s) are reading this topic
0 members, 1 guests, 0 anonymous users