Я использую ORM CodeIgniter DataMapper, но есть кое-что, чего я не совсем понимаю.
В этом примере http://datamapper.wanwizard.eu/pages/examples/login.html вы можете видеть, что в классе модели User определено несколько $validation
правил.
Внутри функции login
вы также можете видеть, что она вызывает $this->validate()->get()
. Когда функция validation
запускается, она должна проверять все правила из $validation
.
Чего я не понимаю, так это того, что для варианта использования входа в систему необходимо проверять только имя пользователя и пароль, но вы можете видеть, что в примере есть другие правила проверки, не связанные с этим вариантом использования. В частности, существует правило confirm_password
, определенное для $validation
, и это правило, очевидно, предназначено только для варианта использования обновления, а не для варианта использования входа.
Поскольку я не вижу в примере никаких кодов, которые обходят эти несвязанные правила, откуда DataMapper ORM узнает, что эти несвязанные правила можно обойти в функции login
?
Большое спасибо всем вам.