在我之前的问题中,我从一个用户那里得到了这段代码。
// app/routes.php
Route::get('characters', 'CharactersController@all');
Route::get('characters/{name}', 'CharactersController@detail');
// 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('CharactersController@search') }}" 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', 'CharactersController@search');我怎么能在:
public function detail($name) { // find character by name & show detail for example return View::make('acc.test'); }我怎么才能找到这个角色的名字呢?我试过做一些像这样的事情
$name = $player->name(我有一个名为Player的模型,我还将Character::where更改为Player::where),我必须在那里插入什么?另外,我如何在视图中显示它?
所以我的意思是,当我按名称搜索球员时,它会显示每个特定球员的球员名称($ player -> name )。
另外,我是否必须更改模型toHasMany中的关系或类似的东西?
发布于 2013-07-31 14:45:34
你可以这样做
public function detail($name) {
$player = Player::where('name', '=', $name)->first();
}如果更多的玩家可以有相同的名字,我宁愿传递ID而不是name,所以在这种情况下使用以下解决方案
public function detail($id) {
$player = Player::findOrFail($id);
}https://stackoverflow.com/questions/17958061
复制相似问题