2015-10-11 13 views
0

我已經在laravel開始了我的第一個項目(跟隨初學者laracasts系列)。我已經成功地在控制器中創建了「慢跑者」範圍和get_joggers()函數,以將該組數據傳遞給視圖 - 太棒了!laravel newbie-用控制器中的函數製作/設置變量的語法

所以現在 - 我有,我通過所有的人一個看法,並部分向他們展示不同的子集,就像這樣:

@include ('partials._people_list', ['person_group' => $joggers]); 

我的問題:在一個視圖頁上,有什麼語法聲明/設置變量在控制器中的函數的結果?我可以想象這樣的事情,但是由於視圖頁面想要HTML我想至少也得把它放在一些PHP標籤或某事(雖然有可能是一個更好的方法):

$person_group = action('[email protected]_joggers'); 

這看起來很痛苦基本,但前27道拉卡斯特並沒有到達那裏,我一直在四處尋找。預先感謝任何幫助!

+0

我從你的問題了解如何直接從視圖調用方法,是這種情況下看這個鏈接http://stackoverflow.com/questions/27322854/how-to-call-controller -meanod-from-blade-view-directly-as-url –

+0

這裏的方法是定義單獨的類(可能是[repository](https://bosnadev.com/2015/03/07/using-repository- pattern-in-laravel-5 /)),它定義了獲取慢跑者和返回的方法作爲一個集合。然後,您可以從您的控制器調用if並將其添加到您的視圖響應中,並從其他位置調用並按原樣使用該集合。 – Bogdan

+0

maytham-那今天不是我的問題,但是知道的非常有用,我確定我會在某個時候使用它。謝謝! Bogdan哇,只是滾動,我認爲這正是我尋找的東西。整個存儲庫的想法對我來說都是新的,但這看起來像是一個很好的循序漸進的演練。現在出去跑步,當我回來的時候很高興能夠深入瞭解這一點。謝謝!!!!! –

回答

1

更新!我跟在工作中的好友,得到的回答是使在把PeopleController /套$慢跑,然後一起傳遞這一切就像這樣:

public function index() 
{ 
    $people = Person::latest('created_at') 
     ->displayable() 
     ->orderBy('last', 'asc', 'first', 'asc') 
     ->get(); 

    $joggers= Person::joggers('created_at')->get(); 

return view('person.index', compact('people', 'joggers')); 

我之前返回不同類型的數據,它我沒有想到我可以派兩個不同的人。神祕解決:)

相關問題