2013-07-30 78 views
1

从我以前的问题,我已经从用户那里得到了这段代码。Laravel 4搜索功能

// app/routes.php 
Route::get('characters', '[email protected]'); 
Route::get('characters/{name}', '[email protected]'); 


// app/controllers/CharactersController.php 
class CharactersController extends BaseController 
{ 
    public function all() 
    { 
     // show all characters 
    } 

    public function detail($name) 
    { 
     // find character by name & show detail for example 
     return View::make('acc.test'); 
    } 
} 

// app/views/acc/test.blade.php 
// HTML::style('css/style.css') loads CSS file located at public/css/style.css 
<!doctype html> 
<html lang="en"> 
<head> 
    <meta charset="UTF-8"> 
    <title>Document</title> 
    {{ HTML::style('css/style.css') }} 
</head> 
<body> 

</body> 
</html> 

此外,搜索功能:

<form action="{{ URL::action('[email protected]') }}" method="get"> 
<input type="text" name="search-term"> 
<input type="submit" value="Search"> 

public function search() 
{ 
    $name = Input::get('search-term'); 
    $searchResult = Character::where('name', '=', $name)->get(); 
    .... 
} 

Route::get('characters/search', '[email protected]'); 

我怎么能在:

public function detail($name) { // find character by name & show detail for example return View::make('acc.test'); } 

我怎么能找到名称的文字?我试着做一些像

$name = $player->name 

(我有一个叫玩家的模式,我也改变了性格::在哪里播放器::在哪里),我有什么要插入呢?另外,我怎么能在视图中显示它?

所以我的意思是当我按名称搜索玩家时,会显示每个特定玩家的玩家名称($ player-> name)。

我也必须将模型中的关系改为hasMany或类似的东西吗?

+1

什么是您的具体题?我可以阅读很多问题,但我无法确定真正的问题。你能澄清吗? –

回答

1

你能做到这样

public function detail($name) { 
    $player = Player::where('name', '=', $name)->first(); 
} 

如果更多的球员可以有相同的名字,我宁愿通过ID而不是名称,所以在这种情况下,使用该解决方案

public function detail($id) { 
    $player = Player::findOrFail($id); 
} 
+0

谢谢。另外,我是否需要将其返回到视图?例如: '返回View :: make('blabla') - > with('player',$ player);',然后我要在blabla.blade.php中做什么?此外,它与搜索功能的权利? – dinomuharemagic

+0

这取决于你想达到什么。你想从数据库加载播放器并向用户显示细节吗?那么是的,你应该... – Andreyco

+0

是的,我想从数据库加载播放器并向用户显示详细信息。此外,它与搜索功能?我认为应该写什么?我应该做一些类似于foreach语句的内容吗?你能举个例子,就像展示球员的名字一样。 – dinomuharemagic