2014-10-12 28 views
1

我控制器Laravel foreach循環不是在視圖中工作

public function showWelcome() 
{ 
     $data = Category::select(); 
     return View::make('hello',$data); 

} 

控制器結果數組

array(3) { 
    [0]=> 
    object(stdClass)#137 (4) { 
    ["id"]=> 
    int(1) 
    ["category_name"]=> 
    string(8) "everyone" 
    ["category_image"]=> 
    string(36) "7e14fecb5b45941dd9bcff3497c57d1a.png" 
    ["start_date"]=> 
    string(10) "2014-09-10" 
    } 
    [1]=> 
    object(stdClass)#138 (4) { 
    ["id"]=> 
    int(2) 
    ["category_name"]=> 
    string(12) "motivational" 
    ["category_image"]=> 
    string(36) "99b8dfff667da7a7e9e39e514e3342bd.png" 
    ["start_date"]=> 
    string(10) "2014-09-09" 
    } 
    [2]=> 
    object(stdClass)#139 (4) { 
    ["id"]=> 
    int(3) 
    ["category_name"]=> 
    string(4) "racy" 
    ["category_image"]=> 
    string(36) "3a213b108c30184a3f416239473a3880.png" 
    ["start_date"]=> 
    string(10) "2014-09-10" 
    } 
} 

我看來

@foreach($data as $fetch) 
    {{ $fetch->id }} 
@endforeach 

我想表現出我的數據數組值查看但不工作。顯示錯誤

未定義的變量:數據(查看:C:\ Users \ shanto \ my-project \ app \ views \ hello.blade.php)

我是laravel中的新成員,我無法理解我的錯誤。

回答

1
在控制器功能

return View::make('hello')->with(array('data'=>$data)); 

由於控制器數據陣列的內部發送值使得它們是視圖文件變量。您需要在陣列中包含$data併發送至視圖。

0

變化

public function showWelcome() 
{ 
     $data = Category::select(); 
     return View::make('hello',$data); 
} 

public function showWelcome() 
{ 
     $data = Category::select(); 
     return View::make('hello')->with('data', $data); 
} 

,或者你可以做

return View::make('hello')->withData($data);