2014-10-06 41 views
0

如何将重定向的两个不同类型的$ errors集合传递回同一页面。我遇到的问题是与variationErrors变量,错误的是未定义的变量:variationErrors发生这种情况我叶片视图页面上将两组错误传递到页面laravel未定义变量

控制器:

$variations = Input::get("variations"); 
    $variationErrors = []; 
    // dd($variations); 
    foreach ($variations as $id) { 

     $data = [ 
      'producttype' => Input::get('producttype_' . $id), 
      'price' => Input::get('price_' . $id), 
      'quantity' => Input::get('quantity_' . $id), 
      'discount' => Input::get('discount_' . $id) 
     ]; 

     $validationVariations = Validator::make(
      $data, 
      ProductVariations::$rules, 
      ProductVariations::$rulesMessages 
     ); 

     if($validationVariations->fails()) { 
      $variationsHasErrors = true; 

      $variationErrors[$id] = $validationVariations->messages()->toArray(); 

     } 
    } 

    if($validationProduct->fails() OR $variationsHasErrors) {   
     // problem here passing $variationErrors on blade page undefined $variationErrors 
     return Redirect::back()->withErrors($validationProduct, $variationErrors)->withInput(); // ->with(compact('productsVariations')); 
    } 

页:

{{ var_dump($variationErrors) }} 
+0

什么版本的Laravel? – 2014-10-06 07:43:38

回答

0

试试这个请。

$variations = Input::get("variations"); 
$variationErrors = []; 
// dd($variations); 
foreach ($variations as $id) { 

    $data = [ 
     'producttype' => Input::get('producttype_' . $id), 
     'price' => Input::get('price_' . $id), 
     'quantity' => Input::get('quantity_' . $id), 
     'discount' => Input::get('discount_' . $id) 
    ]; 

    $validationVariations = Validator::make(
     $data, 
     ProductVariations::$rules, 
     ProductVariations::$rulesMessages 
    ); 

    if($validationVariations->fails()) { 
     $variationsHasErrors = true; 

     $variationErrors[] = $validationVariations->messages()->toArray(); 

    } 
} 

if(!empty($variationErrors)) {   
    // problem here passing $variationErrors on blade page undefined $variationErrors 
    return Redirect::back()->withErrors($variationErrors); // ->with(compact('productsVariations')); 
} 
+0

我删除了'$ validationProduct',因为我没有在任何地方看到它。如果它是另一个错误数组,你可以将它添加到'$ variationErrors'。 – 2014-10-06 07:52:04

+0

它说非法抵消 – ONYX 2014-10-06 07:52:04

+0

再试一次,我编辑。 – 2014-10-06 07:52:29