Php 来自输入表单的模型绑定
我和Laravel一起工作,在示例中,他们似乎决定在控制器内部实现验证,我一点也不喜欢。我想问的是,是否有某种Php 来自输入表单的模型绑定,php,laravel,laravel-4,Php,Laravel,Laravel 4,我和Laravel一起工作,在示例中,他们似乎决定在控制器内部实现验证,我一点也不喜欢。我想问的是,是否有某种bind方法可以将发布的输入字段绑定到我创建的对象,这样我就可以确保我的控制器不乱 我将尝试在代码中解释我想要什么,我认为这将更加清晰 我所拥有的 我想要什么 Ardent可帮助您保持控制器清洁: “Ardent模型使用Laravel的内置验证器类。为模型定义验证规则很简单,通常在模型类中作为静态变量完成”Hm,看起来不错,但我对save函数感到困惑。如果(在我的例子中,这是真的)我使用
bind
方法可以将发布的输入字段绑定到我创建的对象,这样我就可以确保我的控制器不乱
我将尝试在代码中解释我想要什么,我认为这将更加清晰
我所拥有的
我想要什么
Ardent可帮助您保持控制器清洁:
“Ardent模型使用Laravel的内置验证器类。为模型定义验证规则很简单,通常在模型类中作为静态变量完成”Hm,看起来不错,但我对
save
函数感到困惑。如果(在我的例子中,这是真的)我使用自定义存储库来保存它,因为我使用的不是MySql而是Cassandra?我不知道,对不起。我在MySQL中使用它。
public function postRegister() {
$validation = Validator::make(Input::all(), array(
'email' => 'required|email',
'password' => 'required|min:6',
'name' => 'required|alpha',
'gender' => 'required|in:male,female'
));
if ($validation->fails()) {
Input::flashExcept('password');
return Redirect::to('register')->withErrors($validation)->withInput();
}
// Register user...
}
class UserRegisterDto {
public $email;
public $password;
public $name;
public $gender;
protected $errors;
public function isValid() {
// Validate it here, set errors if there are some
return $validator->isValid();
}
public function getErrors() {
return $this->errors;
}
}
public function postRegister() {
$user = Input::bind('UserRegisterDto'); // This is made-up function, I wonder if something like this exists
if ($user->isValid()) {
// Register user...
}
}