簡體   English   中英

Laravel-使用控制器

[英]Laravel - Using Controllers

我正在使用laravel 5.4,有一件事我無法完全理解。 我使用了make:controller(name)-resource來創建帶有index / show / create / edit / update / destroy的控制器。 我正在制作的應用主要是CRUD操作。 我的問題是:

對於數據庫中需要CRUD操作的每個實體,我必須有一個單獨的控制器嗎? 例如,我有2個實體:項目,服務。 我必須有2個控制器,否則它們可以在同一控制器上,例如:

public function store_item(Request $request) {
            **Insert Query**
   }


public function store_service(Request $request) {
            **Insert Query**
   }

正確的方法是什么?

它們可以在同一控制器中,但是當涉及Laravel時,為項目,服務或任何CRUD操作創建不同的控制器是一個好習慣。

您可以只為商品和服務創建一個控制器,就必須創建諸如store_itemstore_service類的store_item ,並且必須通過諸如Route::post('items','YourController@store_item');每條路線來調用它們Route::post('items','YourController@store_item'); 和類似的服務。

但是,如果您為ItemsServices創建單獨的控制器,則不必為每個任務或動作創建路由。 您只需要在Routes文件中注冊Resourceful Route ,就可以了!

例如,如果要同時為項和服務創建單獨的控制器,則只需將這兩行寫在Routes文件中就可以了!

Route::resource('items', 'ItemsController');
Route::resource('services', 'ServicesController');

因此,為CRUD操作創建控制器是一件好事,因為它使Laravel中的內容變得整潔。 讓我知道您是否還有其他疑問!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM