Laravel 4 Ardent for Laravel是否使用存储库模式?
有人在Laravel中使用Ardent和repository模式,并在save中使用它的“自动水合”关系吗?如果是这样,规则是否需要在存储库中,或者可以在单独的验证器服务中?Ardent的基本思想是在模型本身中进行自动验证。然而,如果你想让你的应用程序尽可能健壮,最好使用验证服务。最后,你可以在任何你想使用的地方使用这项服务(甚至可以通过它的内部$rules),这样它就完全干了 编辑: 假设您有这样一个验证服务Laravel 4 Ardent for Laravel是否使用存储库模式?,laravel-4,ardent,Laravel 4,Ardent,有人在Laravel中使用Ardent和repository模式,并在save中使用它的“自动水合”关系吗?如果是这样,规则是否需要在存储库中,或者可以在单独的验证器服务中?Ardent的基本思想是在模型本身中进行自动验证。然而,如果你想让你的应用程序尽可能健壮,最好使用验证服务。最后,你可以在任何你想使用的地方使用这项服务(甚至可以通过它的内部$rules),这样它就完全干了 编辑: 假设您有这样一个验证服务 namespace App\Services\Validators; class U
namespace App\Services\Validators;
class UserValidator extends Validator {
/**
* Validation rules
*/
public static $rules = array(
'username' => array('required'),
'email' => array('required','email'),
'password' => array('required','min:12','confirmed'),
'password_confirmation' => array('required','min:12'),
);
}
在存储库中,您可以执行以下操作
public function store()
{
$v = new App\Services\Validators\UserValidator;
if($v->passes())
{
$this->user->create($input);
return true
}
return Redirect::back()->withInput()
->withErrors($v->getErrors());
}
在Ardent模型中,您可以直接修改规则
Ardent::$rules = UserValidator::$rules
查看后,您可能会发现有趣的是,上面的代码就是基于这篇文章编写的。好的,但是有没有办法让您热衷于在存储库或验证服务(我目前拥有)中查看规则?