Хорошо, это сводит меня с ума. Я работаю над Учебным пособием по IBM CakePHP, и в первой части я нахожусь в разделе, где автор вводит правила проверки для ввода формы:
www.ibm.com / DeveloperWorks / с открытым исходным кодом / учебники / ОС-PHP-cake1 / section5.html # N107E3
Что касается меня, я не могу понять, что происходит в этой строке кода:
$this->invalidate('username_unique');
Согласно документации CakePHP, метод Model :: invalidate () принимает в качестве первого параметра строку, которая задает «Имя поля для аннулирования». Как «username_unique» имя поля для проверки? Похоже, это должно быть просто старое «имя пользователя». Но как ни странно, авторский код работает, а мой - нет, когда я меняю «username_unique» на «username» (или даже «User.username»), поэтому я думаю, что в документации может быть серьезный недостаток (или очень возможно, со мной).
[FWIW, я вижу, что CakePHP 1.25 обеспечивает лучшее средство для проверки, но я все еще беспокоюсь, что то, что кажется хорошо документированным методом, похоже, не выполняет то, что рекламируется, и я хочу понять, почему учебный код работает.]
Может кто-нибудь пролить свет на это?