laravel是一種流行的php web應用程序框架,它擁有豐富的功能和工具,幫助開發人員更快、更輕松地構建web應用程序。而laravel nova和adminbro是兩個開源框架,它們能夠幫助我們快速生成漂亮的后臺管理界面。本文將介紹如何使用它們來實現快速開發,讓你的應用程序迅速上線。
一、理解Laravel Nova和AdminBro
Laravel Nova是Taylor Otwell和他的團隊開發的一款漂亮且易于使用的后臺管理面板,它提供了一些強大的功能,例如:資源管理、過濾和排序、自定義儀表盤等。此外,使用多個組件,你可以輕松地自定義Nova的樣式和外觀。
AdminBro是一個適用于Node.js和Typescript的可擴展后臺管理面板,它使用React作為用戶界面庫,具有響應式設計和易用性開發人員可以使用AdminBro來開發其自己的管理面板,同時,可以根據需要自定義其外觀和行為。
二、安裝和配置Laravel Nova
在開始之前,您需要確保您已經在您的項目中安裝了最新版本的Laravel。在您的項目中,使用composer更新和安裝最新版本的Laravel Nova。
composer require laravel/nova
安裝過程可能需要一段時間,而且您需要登錄到Laravel Nova的官方網站來注冊您的Nova應用并注冊授權。
完成后,您需要將Nova添加到路由文件中。這可以使用以下語句來實現:
Route::get(‘/nova’, function () { return redirect(‘/nova/login’);});
你也可以將此語句添加到您的路由文件中,這樣管理面板將只對授權用戶可用。
Route::middleware([‘auth’])->group(function () { Route::get(‘/nova’, function () { return redirect(‘/nova/login’); }); Nova::routes();});
在這里,您可以使用Nova::routes()方法來指定哪些路由將被nova使用。設置完成后,您現在可以訪問您新增的/Admin路由,并成功登錄后進入Nova控制面板。
三、安裝和配置AdminBro
與Laravel Nova相比,AdminBro可以在Node.js環境中運行。 它是一種插件化架構,支持各種拓展,例如各種輸入值的強類型輸入、自定義預覽、過濾、排序等功能。
安裝AdminBro是很容易的,首先你需要安裝兩個必要的依賴。
npm install admin-bro
npm install @admin-bro/express
接下來,您需要在Express應用程序上設置AdminBro,然后在路由器上啟用AdminBro,您可以在其中設置路由路徑和處理程序。
const AdminBro = require('admin-bro') const AdminBroExpress = require('@admin-bro/express') const express = require('express') const adminBro = new AdminBro() const router = AdminBroExpress.buildRouter(adminBro) const app = express() app.use(adminBro.options.rootPath, router) app.listen(8080, () => { console.log('Server running')})
在Express應用程序中啟用AdminBro后,您需要創建一個包含所有實體的AdminBro配置對象。
const Cars = require('./entities/cars') const Users = require('./entities/users') const adminBroOptions = { resources: [{ resource: Cars, options: { properties: { name: { isTitle: true }, gearbox: { components: { list: AdminBro.bundle('./path/to/custom/components/list') } }, }, }, }, Users] } const adminBro = new AdminBro(adminBroOptions)
在這里,我們創建了一個附加了我們的實體的代碼。您可以通過該程序作為模板,添加自定義entities、屬性和組件。
四、使用Laravel Nova和AdminBro管理您的數據
現在,我們已經將Laravel Nova和AdminBro安裝在我們的應用程序中,并已經配置了他們,我們可以使用它們來創建自定義管理面板。雖然這些框架在一些方面非常相似,但在其他方面則略有不同。
1.資源管理:Laravel Nova提供了一個簡單但強大的資源管理器,可以讓您輕松和簡單地管理資源,例如:文章、作者、評論、訂單,使用Laravel便利的ORM(對象關系映射)。AdminBro也可以進行類似的操作,但是,需要使用新的實體類和來自自己的數據源,可能需要耗費更多的時間。
2.字段和屬性:Laravel Nova和AdminBro的管理面板允許您輕松地通過安裝插件或自定義組件來添加輸入、顯示和格式化字段。兩種框架都支持創建字段,但Nova有更多的字段組件。與此相反,AdminBro的自定義組件允許您更直接地管理某些組件,例如:選擇器和單選按鈕。
3.視圖自定義:Laravel Nova使用Blade作為默認的模板引擎。因此你可以使用 L aravel 中的核心模板系統來定義視圖。同時Nova還可以使用Vue來開發自定義組件。由于AdminBro使用React作為其默認的用戶界面庫,所以您需要使用React來開發您的自定義視圖。
結論
Laravel Nova和AdminBro都是很好的框架,可以幫助開發者更快地在Web應用程序中創建漂亮和易用的管理面板。他們的工作原理略有不同,但是您可以根據您的需求來決定使用哪種框架。現在,你只需按照以上步驟即可在您的應用程序中配置和使用這兩個框架,確保您在學習和開發中最大的效率提升,讓您的應用程序更快地上線。