前文已經介紹如何創建控制器、動作和視圖,下面我們來創建一些更實質的功能。
**在此之前我們需要修改一些配置:**
* 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,即創建和讀取。