5 开始使用

前文已经介绍如何创建控制器、动作和视图,下面我们来创建一些更实质的功能。

在此之前我们需要修改一些配置:

  • app/config/app.php 文件中的 debug 选项设置为 true (注:开启开发模式,更友好的开发提示);
  • app/config/database.php 文件中的 default 选项设置为 sqlite (注:我们之前选择 sqlite 作为默认数据库);

在博客程序中,我们要创建一个新“资源”。资源是指一系列类似的对象,比如文章,人和动物。

资源可以被创建、读取、更新和删除,这些操作简称 CRUD。

Laravel 提供了资源控制器可以简单的建立跟资源相关的 RESTful 控制器。 创建文章资源后,app/routes.php 文件的内容新增如下:

Route::resource("articles", "ArticlesController");

执行 $ php artisan routes 任务,会看到定义了所有标准的 REST 动作。输出结果中各列的意义稍后会说明。

+-----+--------------+------------------+-------------+----------------+---------------+
| Domain | URI       | Name       | Action        | Before Filters | After Filters |
+--------+--------------+------------------+--------------+----------------+---------------+
|   | GET|HEAD /    |   | WelcomeController@index    |    |   |
|   | GET|HEAD articles   | articles.index   | ArticlesController@index   |     |      |
|   | GET|HEAD articles/create  | articles.create  | ArticlesController@create  |     |       |
|   | POST articles    | articles.store   | ArticlesController@store   |     |      |
|   | GET|HEAD articles/{articles}  | articles.show    | ArticlesController@show    |      |     |
|   | GET|HEAD articles/{articles}/edit | articles.edit    | ArticlesController@edit    |     |     |
|   | PUT articles/{articles}           | articles.update  | ArticlesController@update  |    |    |
|   | PATCH articles/{articles}    |      | ArticlesController@update  |       |      |
|   | DELETE articles/{articles}   | articles.destroy | ArticlesController@destroy |     |      |
+--------+-------------+-----------------+-----------------+----------------+---------------+

下一节,我们会加入新建文章和查看文章的功能。这两个操作分别对应于 CRUD 的 C 和 R,即创建和读取。

文章导航