laravel验证,如果验证通过,它会返回什么?

时间:2016-05-23 15:23:46

标签: database validation laravel conditional store

有些事情我不明白。 将输入传递给控制器​​时,我使用laravel进行验证,例如:

        $this->validate($request, [
            'user_id' => 'required',
            'post_id' => 'required',
            'body' => 'required'

        ]);

现在重点是,在插入数据库之前是否必须先创建一个条件?如果是这样怎么样?我的意思是(伪代码)

if data is validated { store in DB }

validate会得到一切,只要找到错误就停止?

2 个答案:

答案 0 :(得分:0)

如果验证失败,错误将被推送到会话中,用户将被重定向到previus位置。

如果验证顺利,将执行$this->validate(...)之后的代码。

答案 1 :(得分:0)

试试这个:

// define rules
  $rules = array(
    'user_id' => 'required',
    'post_id' => 'required',
    'body' => 'required'
   );

$validator = Validator::make(Input::all(), $rules);

if ($validator->fails())
{
  // something
  // return Redirect::back()
  //        ->withErrors($validator) // send back all errors to the login form
  //        ->withInput();
}
else
{
  // something
  $data->save(); // save your data 
}