2016-12-02 109 views
1

我的大多數控制器都遵循laravel文檔中描述的基本RESTful資源控制器方法:https://laravel.com/docs/5.3/controllers。我一直在相應地訂購我的方法。例如,我的控制器看起來像:控制器中非克隆方法排序的最佳實踐

public function index() 
{ 
    // some code 
} 

public function create() 
{ 
    // some code 
} 

public function store() 
{ 
    // some code 
} 

public function show() 
{ 
    // some code 
} 

public function edit() 
{ 
    // some code 
} 

public function update() 
{ 
    // some code 
} 

public function destroy() 
{ 
    // some code 
} 

不過,偶爾我有沒有基本的CRUD者之一,如下載(),例如方法。在最佳實踐中,您應該在哪裏放置此非CRUD方法。我有時只是看到了它。

回答

1

不需要訂購。您可以在控制器中的任何位置添加該方法並且您應該添加該方法的路線:

例如,

Route::get('photo/download', '[email protected]'); 
Route::resource('photo', 'PhotoController'); 
+0

但是,訂購是需要的路線 – Wistar

0

它與Laravel沒有特別的關係。它實際上是代碼練習代碼組織

對於你自己比Restful crud法等方法,我建議遵循羅伯特C.馬丁Bob大叔)如何組織的代碼的方法。

在書中清潔守則的(強烈建議閱讀每一個程序員),Bob大叔描述如下

公共職能應遵循的變量列表。我們喜歡把 公用函數調用的私有實用程序放在 公用函數本身之後。這遵循降低規則並幫助 程序閱讀像報紙文章。

+0

感謝您分享此 – Wistar