2014-02-07 106 views
0

我有一個電影網站,我希望讓人們按流派來搜索輸入返回空查詢錯誤

movies.com/people/action/genre

的路線

Route::get('people/{genre}/genre', array('uses' => '[email protected]', 'as' => 'people.genre')); 

演員控制器@類型

public function genre() 
{ 

    $genre=Input::get('genre'); 
     $actors = $this->actor->allgenre($genre); 
      return View::make('Actor.All')->withActors($actors); 

} 

這抓住了所有演員從分區

function allGenre($genre) 
{ 

     return $this->actor->where('genre', 'like', '$genre')->orderBy('views', 'desc')->paginate(24); 

} 

這是一個沒有返回結果,當它應該返回的結果,因爲如果我去

function allGenre($genre) 
{ 

     return $this->actor->where('genre', 'like', 'action')->orderBy('views', 'desc')->paginate(24); 

} 

結果顯示

+0

爲什麼你把它標記爲symfony2? – Pawel

+0

對不起,因爲我使用symfony2軟件包。 – Stephenmelb

回答

1

當您使用路由,在$類型變量會綁定該控制器:

public function genre($genre) 
{ 
    $actors = $this->actor->allgenre($genre); 
    return View::make('Actor.All')->withActors($actors); 
} 

雖然在previous question你使用查詢字符串,那麼您甲腎上腺素EDED輸入::獲得(「密鑰」),現在你改變了URL,並且您不使用資源控制器了,所以你必須回到「正常」的方式

+0

嗨Damien感謝分享,但是當我去movies.com/people/action/genre時,它仍然沒有返回結果。如何檢查$ genre變量是否傳遞給allgenre函數? – Stephenmelb

+0

我得到它的工作 – Stephenmelb

0

我得到它的工作

function allGenre($genre) 
{ 

    return $this->actor->where('genre', 'like', $genre)->orderBy('views', 'desc')->paginate(24); 

} 

顯然Laravel不接受'$流派'與'變量周圍