Laravel 开发:路由、Blade 模板与视图组合器的深入解析
1. Laravel 路由基础
Laravel 的路由定义在 routes/web.php
和 routes/api.php
中。在这些文件里,你能够定义每个路由的预期路径,明确哪些部分是静态的,哪些是参数,确定可以访问该路由的 HTTP 动词,以及如何解析路由。同时,你还能为路由附加中间件、进行分组并命名。
路由闭包或控制器方法的返回值决定了 Laravel 对用户的响应方式:
- 如果返回的是字符串或视图,会直接展示给用户。
- 如果是其他类型的数据,会转换为 JSON 格式后呈现给用户。
- 如果是重定向,会强制进行重定向操作。
以下是一个简单的 GET 路由测试示例:
// AssignmentTest.php
public function test_list_page_shows_all_assignments()
{
$assignment = Assignment::create([
'title' => 'My great assignment'
]);
$this->visit('assignments')
->dee(['My great assignment']);
}
2. Blade 模板引擎
2.1 Blade 简介
相较于大多数后端语言,PHP 作为模板语言有一