CakePHP - правило проверки 'последний' не работает - PullRequest
0 голосов
/ 10 августа 2011

У меня есть два пользовательских правила проверки (я проверял, что они работают правильно):

class PasswordResetKey extends AppModel {

    public $validate = array(

        'timestamp' => array(
            'rule' => '_notExpired',
            'message' => 'Your password reset link has expired. Please request another one.',
            'last' => true
        ),

        'key' => array(
            'rule' => '_validFormat',
            'message' => 'You do not appear to have used a valid password reset link. Please request another one.'
        )

    );

Но, что бы я ни делал, возвращаемые ошибки всегда:

Array
(
    [key] => You do not appear to have used a valid password reset link. Please request another one.
    [timestamp] => Your password reset link has expired. Please request another one.
)

Дажекогда я проверяю, что правило метки времени не работает, оно все равно включается и проверяет другое правило на «ключ».Я хочу, чтобы ошибка отметки времени была только в том случае, если она есть.

Ответы [ 2 ]

2 голосов
/ 10 августа 2011

последний - для нескольких правил на поле. из-за того, что у вас есть только одно правило на поле, оно всегда последнее и, следовательно, бессмысленно

0 голосов
/ 10 августа 2011

Моя интуиция говорит, что _notExpired не должно срабатывать, если ссылка сброса неверна. Я бы попросил это правило поднять флаг, только если ссылка верна, но срок ее действия истек.

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