我在 Kohana ORM 中验证模型时遇到问题,它应该抛出 ORM_Validation_Exception,但是它没有。我正在尝试验证电子邮件地址。
型号_电子邮件地址
public function rules()
{
return array(
'emailaddress' => array(
array(
'Valid::email'
),
),
);
}
Controller_Test
public function action_valid()
{
$email = ORM::factory('emailaddress');
$email->emailaddress = 'test';
try
{
$email->create();
}
catch(ORM_Validation_Exception $e)
{
echo Debug::dump($e->errors());
}
}
这个例子应该将一个有错误的数组转储到屏幕上,但它只是保存了电子邮件地址,没有进一步的通知。
当我将 'Valid::email' 更改为 'not_empty' 时,它确实会引发异常。经过一些调试后,我发现 Valid::email 返回 false,这是应该的。
编辑:正如一些人所说,将 'Valid::email' 更改为 'email' 没有帮助。此外,当我在电子邮件方法中放置一个出口时,脚本执行将停止。