laravel验证器和错误集合

时间:2014-10-04 22:09:14

标签: php laravel laravel-4

我想知道在执行验证后如何访问laravel验证器错误,我想要完成的是创建一个带有数据的新模型然后使用验证器对象验证它然后将该模型的id和错误消息存储在一个数组中然后在我的刀片页面中执行循环并输出错误信息。有人可以查看我的代码并更正任何错误并帮助指导我使代码执行需要完成的工作 - 谢谢

public function store() {

     $products = [];
     $id = Input::get('id'); // multiple id's
     $title = Input::get('title');  // multiple title's
     $price = Input::get('price');  // multiple price's

     for ($i=0, $c = count($id); $i<$c; ++$i) {
         $product = New Product([
             'id' => $id[$i],  
             'title' => $title[$i],
             'price' => $price[$i]
         ]);

         $validator = Validator::make(
            $data = $product,
            Product::$rules,
            Product::$rulesMessages
        );  

        // below is what I think I need to do need sum help
        if($validator->fails()) {
            $record = [];
            $record["id"] = $product=>id; // is this right
            $record["errors"] = $validation->errors(); // how do you get errors
        }

        $products[] = $record;
    }
}

1 个答案:

答案 0 :(得分:2)

验证器有一个方法 - &gt; messages(),它返回MessageBag类的一个实例,填充生成的错误(如果验证器失败)。

$validator->messages()->toArray();

将为您提供包含所有错误的数组。