第266期 / December 5, 2019

分享到臉書!分享到維特!分享到噗浪!分享到Google+!分享到微博!轉寄友人友善列印

Laravel-Admin探討

作者/邱國華

[發表日期:2019/12/5]

作者簡歷

目前任職於凌群電腦證券產品研發處,專長包含C、C#、JAVA等語言的程式撰寫,曾參與多項Front End Processor產品與開戶平台等專案開發。

Laravel-Admin簡介

Laravel是一個免費的開源php web框架,由taylor otwell所創建。根據Laravel 官方介紹所描述,Laravel的eloquent orm提供了漂亮、簡潔的activerecord來和資料庫互動,每個資料表有一個對應的「模型」可以用來跟資料表互動,使用者可以透過模型查詢與新增資料表內的資料。而Laravel-Admin是一個基於Laravel的後台套件,可以利用數行指令快速建立後台管理系統的工具,提供頁面、表單、圖片處理等功能,目前Laravel-Admin 1.5版需要php 7+和Laravel 5.5,表一是Laravel-Admin官網所描述有關於Laravel-Admin的優點。


《表一》Laravel-Admin優點


Laravel-Admin安裝

在使用Laravel-Admin前須建立Laravel專案,可以利用底下指令生成Laravel,執行完畢後會出現如圖一的結果,並在當前路徑下的Laravel資料夾下建立Laravel專案,Laravel專案目錄結構如圖二所示。

Composer create-project --prefer-dist laravel/laravel laravel/laravel


《圖一》Laravel 安裝畫面



《圖二》Laravel目錄結構


建立好Laravel專案後,需要修改Laravel專案底下的.env檔案,需依照環境對db和url的設定進行調整,圖三為預設.env的設定資訊。


《圖三》預設.env設定


筆者的Laravel環境是建立在xampp之中,xampp\apache\conf\extra\httpd-vhosts.conf 設定的url如圖四設定


《圖四》xampp 的httpd-vhosts.conf 設定


因此將.env的設定更改為


《圖五》修改後.env設定


設定好環境後打以下三行指令進行Laravel-Admin 的安裝,安裝完畢後Laravel-Admin就會在設定的環境中依照設定的db建立如圖六的相關表單,以及建立帳密為admin的後台系統,登入後可以看到如圖七的介面,並且有帳號管理與權限等功能。

Composer require encore/laravel-admin
Php artisan vendor:publish --provider="encore\admin\adminserviceprovider"
Php artisan admin:install


《圖六》預設db表單



《圖七》初始後台介面



《圖八》帳號管理介面


範例

在專案目錄底下打下面指令建立model的程式檔,執行完畢如圖九,該指令會在\app底下建立demo.php與database\migrations底下建立migration,demo.php程式內容如圖十,migration檔案預設檔名會帶日期區分,如圖九建立出來檔名為”2019_06_20_035126_create_demos_table.php”,其預設資料如圖十一所示。

Php artisan make:model demo –m


《圖九》建立model



《圖十》demo.php內容



《圖十一》migration內容


Migration是一個資料庫的版本控制,能夠輕鬆的修改跟共享應用程式的資料庫結構,也可用下行指令在新建出一個migration。

Php artisan make:migration create_users_table

在migration中的up的create中可以設定資料表的欄位,例如可以在其中增加一個紀錄名稱的欄位,修改完畢後執行下行指令即可更新資料庫。

Php artisan migrate


《圖十二》修改migration內容



《圖十三》資料庫新增demos表


在專案目錄底下打下面指令建立controller的程式檔,執行完畢如圖十四,該指令會在app\admin\controllers底下建立democontroller.php。

Php artisan admin:make democontroller --model=app\demo


《圖十四》建立controller


在建立controller的時候會跳如圖十四的提示,依照提示去app/admin/routes.php增加底下程式,增加完畢會如圖十五。

$router->resource('demos', democontroller::class);


《圖十五》增加路由


回到後台網站在圖十四左邊紅框位置,點選admin->menu進入menu設定頁面,在圖十四藍框位置輸入相關設定,就可以將demon加入到 admin 的 menu 中,設定完成會如圖十七增加一個menu。


《圖十六》新增menu



《圖十七》新增menu完成


設定完成後按左邊demo_title按鈕就可以到圖 18網頁對demo資料表進行新增、修改、刪除等操作。


《圖十八》後台管理demo表畫面


結論

Laravel-Admin提供一個簡單的指令來快速建立一個後台操作模板,讓開發者可以簡化做後台的操作,根據Laravel-Admin官網所述,目前已經有許多公司如騰訊、百度等正在使用Laravel-Admin來建立後台系統,因此Laravel-Admin是一個網頁開發者值得持續關注學習的套件。

參考資料

http://laravel-admin.org/