Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 来自输入表单的模型绑定_Php_Laravel_Laravel 4 - Fatal编程技术网

Php 来自输入表单的模型绑定

Php 来自输入表单的模型绑定,php,laravel,laravel-4,Php,Laravel,Laravel 4,我和Laravel一起工作,在示例中,他们似乎决定在控制器内部实现验证,我一点也不喜欢。我想问的是,是否有某种bind方法可以将发布的输入字段绑定到我创建的对象,这样我就可以确保我的控制器不乱 我将尝试在代码中解释我想要什么,我认为这将更加清晰 我所拥有的 我想要什么 Ardent可帮助您保持控制器清洁: “Ardent模型使用Laravel的内置验证器类。为模型定义验证规则很简单,通常在模型类中作为静态变量完成”Hm,看起来不错,但我对save函数感到困惑。如果(在我的例子中,这是真的)我使用

我和Laravel一起工作,在示例中,他们似乎决定在控制器内部实现验证,我一点也不喜欢。我想问的是,是否有某种
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...
    }
}