Laravel11開發購物車day3在這個系列的第三天,我們將繼續完善我們的電子商務網站後台管理系統。今天的重點將放在產品管理和選單管理上,這兩個功能對於任何電子商務平台來說都是至關重要的。產品管理我們首先完成了ProductController,它包含了以下主要功能:顯示所有產品列表創建新產品編輯現有產品刪除產品每個產品都與一個選單關聯,這樣我們可以更好地組織我們的產品目錄。phppublicfunctionindex{$productsProduct::with'menu'get;returnview'backend.products.index',compact'products';}在創建和編輯產品時,我們需要提供所有可用的選單供用戶選擇:phppublicfunctioncreate{$menusMenu::all;returnview'backend.products.create',compact'menus';}選單管理接下來,我們實現了MenuController,它提供了類似的功能:顯示所有選單創建新選單編輯選單刪除選單phppublicfunctionstoreRequest$request{$requestvalidate'name''required','description''nullable',];Menu::create$requestall;returnredirectroute'backend.menus.index'with'success','選單新增成功.';}視圖文件與DataTables整合我們為產品和選單管理創建了相應的視圖文件,包括列表頁、創建頁和編輯頁。這些視圖文件不僅使用了Bootstrap來美化界面,還整合了DataTables插件來增強表格的功能,提供更好的用戶體驗。@extends'layouts.backend'@section'content'divclass"containermt5"divclass"dflexjustifycontentbetweenalignitemscentermb3"h2產品列表/h2aclass"btnbtnprimary"href"{{route'backend.products.create'}}"新增產品/a/divtableid"productsTable"class"tabletablebordered"!裏面的選單的過程/table/div@endsection@push'styles'linkhref"https://cdn.datatables.net/1.11.5/css/dataTables.bootstrap5.min.css"rel"stylesheet"@endpush@push'scripts'scriptsrc"https://cdn.datatables.net/1.11.5/js/jquery.dataTables.min.js"/scriptscriptsrc"https://cdn.datatables.net/1.11.5/js/dataTables.bootstrap5.min.js"/scriptscript$function{$'productsTable'.DataTable{"language":{"lengthMenu":"顯示MENU筆資料","zeroRecords":"沒有符合的結果","info":"顯示第START到END筆資料,總共TOTAL筆","infoEmpty":"沒有資料","infoFiltered":"從MAX筆資料中過濾","search":"搜尋:","paginate":{"first":"第一頁","last":"最後一頁","next":"下一頁","previous":"上一頁"}}};};/script@endpush在這個例子中,我們做了以下幾點:1.使用@push指令來添加DataTables所需的CSS和JavaScript文件。2.在頁面底部初始化DataTables,並設置了中文語言選項。3.表格結構符合DataTables的要求,包含了thead和tbody部分。通過使用DataTables,我們的產品列表頁面現在具有以下功能:分頁搜索排序每頁顯示記錄數選擇這大大提高了用戶在管理大量產品時的效率。同樣的方法也應用於選單列表頁面,確保了整個後台管理系統的一致性和易用性。路由設置我們在web.php中設置了相應的路由,使用了資源路由來簡化代碼:phpRoute::group'middleware''auth'],'prefix''backend','as''backend.'],function{Route::resource'products',ProductController::class;Route::resource'menus',MenuController::class;};身份驗證我們還完善了登錄頁面,使用了Laravel的內置身份驗證系統:phpformmethod"POST"action"{{route'login'}}"class"pt3"@csrf!表單內容/form總結在Day03中,我們成功實現了產品和選單的CRUD操作,並美化了後台界面。這為我們的電子商務平台奠定了堅實的基礎。接下來,我們將繼續完善其他功能,如訂單管理和用戶管理等。GitHub倉庫:git@github.com:renfuher/ecommercelaravel.git請繼續關注我們的Laravel購物車開發系列!預覽圖片!圖片01]https://raw.gitmirror.com/renfuher/imagedrive/main/develop/productlist.png!圖片02]https://raw.gitmirror.com/renfuher/imagedrive/main/develop/productadd.png!圖片03]https://raw.gitmirror.com/renfuher/imagedrive/main/develop/productupdate.png