我正在使用 CodeIgniter DataMapper ORM,但有些东西我不太明白。
在这个例子中,http://datamapper.wanwizard.eu/pages/examples/login.html,你可以看到$validation
在 User 模型类上定义了一些规则。
在login
函数内部,您还可以看到它调用了$this->validate()->get()
. 当validation
函数运行时,它应该检查来自$validation
.
我不明白的是,对于登录用例,只需要验证用户名和密码,但您可以在示例中看到与此用例无关的其他验证规则。具体来说,confirm_password
定义了一条规则$validation
,这条规则显然只针对更新用例,而不是登录用例。
由于我在示例中没有看到任何绕过这些不相关规则的代码,那么 DataMapper ORM 是如何真正知道函数中可以绕过这些不相关规则的login
呢?
非常感谢大家。