我一直在谷歌搜索,但我没有找到任何关于如何验证一个以上的模型与Kohana 3.2的例子。
try
{
$one = ORM::factory('one');
$one->values($this->request->post());
$one->check();
$two = ORM::factory('two');
$two->values($this->request->post());
$two->check();
}
catch(ORM_Validation_Exception $e)
{
$errors = $e->errors('models');
}
如果"one"有任何错误,"two"永远不会被检查。
这是使用try catch
的常规行为。像下面这样重写代码应该能做到
$errors = array();
try
{
$one = ORM::factory('one')->values($this->request->post());
$one->check();
}
catch (ORM_Validation_Exception $e)
{
$errors = array_merge($errors, $e->errors('models'));
}
try
{
$two = ORM::factory('two')->values($this->request->post());
$two->check();
}
catch (ORM_Validation_Exception $e)
{
$errors = array_merge($errors, $e->errors('models'));
}