0

我有个问题。我怎么能创建子页面(像这样:character.php?name=Xar),但我想要它在 Laravel 中。我必须创建路线吗?还要提一下,当我创建这样的路线时:

Route::get('account/test', 'HomeController@test'); 

视图位于views/aac/test下的文件夹中,功能如下:

public function test()
{
    return View::make('aac.test');
}

它不会加载 CSS。它只是一个 HTML 页面。

再次回到问题,我怎么能创建这样的网站?我也在使用 Blade 模板引擎。

4

1 回答 1

1
// 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">
</form>

如指定的那样,搜索表单被提交到CharactersController及其search方法。

控制器的方法

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

注册新路线

Route::get('characters/search', 'CharactersController@search');
于 2013-07-26T11:20:32.503 回答