Laravel是一種流行的PHP Web應(yīng)用程序框架,它擁有豐富的功能和工具,幫助開發(fā)人員更快、更輕松地構(gòu)建Web應(yīng)用程序。而Laravel Nova和AdminBro是兩個(gè)開源框架,它們能夠幫助我們快速生成漂亮的后臺(tái)管理界面。本文將介紹如何使用它們來實(shí)現(xiàn)快速開發(fā),讓你的應(yīng)用程序迅速上線。
一、理解Laravel Nova和AdminBro
Laravel Nova是Taylor Otwell和他的團(tuán)隊(duì)開發(fā)的一款漂亮且易于使用的后臺(tái)管理面板,它提供了一些強(qiáng)大的功能,例如:資源管理、過濾和排序、自定義儀表盤等。此外,使用多個(gè)組件,你可以輕松地自定義Nova的樣式和外觀。
AdminBro是一個(gè)適用于Node.js和Typescript的可擴(kuò)展后臺(tái)管理面板,它使用React作為用戶界面庫,具有響應(yīng)式設(shè)計(jì)和易用性開發(fā)人員可以使用AdminBro來開發(fā)其自己的管理面板,同時(shí),可以根據(jù)需要自定義其外觀和行為。
二、安裝和配置Laravel Nova
在開始之前,您需要確保您已經(jīng)在您的項(xiàng)目中安裝了最新版本的Laravel。在您的項(xiàng)目中,使用composer更新和安裝最新版本的Laravel Nova。
composer require laravel/nova
安裝過程可能需要一段時(shí)間,而且您需要登錄到Laravel Nova的官方網(wǎng)站來注冊(cè)您的Nova應(yīng)用并注冊(cè)授權(quán)。
完成后,您需要將Nova添加到路由文件中。這可以使用以下語句來實(shí)現(xiàn):
Route::get('/nova', function () { return redirect('/nova/login');});
你也可以將此語句添加到您的路由文件中,這樣管理面板將只對(duì)授權(quán)用戶可用。
Route::middleware(['auth'])->group(function () { Route::get('/nova', function () { return redirect('/nova/login'); }); Nova::routes();});
在這里,您可以使用Nova::routes()方法來指定哪些路由將被nova使用。設(shè)置完成后,您現(xiàn)在可以訪問您新增的/Admin路由,并成功登錄后進(jìn)入Nova控制面板。
三、安裝和配置AdminBro
與Laravel Nova相比,AdminBro可以在Node.js環(huán)境中運(yùn)行。 它是一種插件化架構(gòu),支持各種拓展,例如各種輸入值的強(qiáng)類型輸入、自定義預(yù)覽、過濾、排序等功能。
安裝AdminBro是很容易的,首先你需要安裝兩個(gè)必要的依賴。
npm install admin-bro
npm install @admin-bro/express
接下來,您需要在Express應(yīng)用程序上設(shè)置AdminBro,然后在路由器上啟用AdminBro,您可以在其中設(shè)置路由路徑和處理程序。
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')})
登錄后復(fù)制
在Express應(yīng)用程序中啟用AdminBro后,您需要?jiǎng)?chuàng)建一個(gè)包含所有實(shí)體的AdminBro配置對(duì)象。
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)
登錄后復(fù)制
在這里,我們創(chuàng)建了一個(gè)附加了我們的實(shí)體的代碼。您可以通過該程序作為模板,添加自定義entities、屬性和組件。
四、使用Laravel Nova和AdminBro管理您的數(shù)據(jù)
現(xiàn)在,我們已經(jīng)將Laravel Nova和AdminBro安裝在我們的應(yīng)用程序中,并已經(jīng)配置了他們,我們可以使用它們來創(chuàng)建自定義管理面板。雖然這些框架在一些方面非常相似,但在其他方面則略有不同。
1.資源管理:Laravel Nova提供了一個(gè)簡(jiǎn)單但強(qiáng)大的資源管理器,可以讓您輕松和簡(jiǎn)單地管理資源,例如:文章、作者、評(píng)論、訂單,使用Laravel便利的ORM(對(duì)象關(guān)系映射)。AdminBro也可以進(jìn)行類似的操作,但是,需要使用新的實(shí)體類和來自自己的數(shù)據(jù)源,可能需要耗費(fèi)更多的時(shí)間。
2.字段和屬性:Laravel Nova和AdminBro的管理面板允許您輕松地通過安裝插件或自定義組件來添加輸入、顯示和格式化字段。兩種框架都支持創(chuàng)建字段,但Nova有更多的字段組件。與此相反,AdminBro的自定義組件允許您更直接地管理某些組件,例如:選擇器和單選按鈕。
3.視圖自定義:Laravel Nova使用Blade作為默認(rèn)的模板引擎。因此你可以使用 L aravel 中的核心模板系統(tǒng)來定義視圖。同時(shí)Nova還可以使用Vue來開發(fā)自定義組件。由于AdminBro使用React作為其默認(rèn)的用戶界面庫,所以您需要使用React來開發(fā)您的自定義視圖。
結(jié)論
Laravel Nova和AdminBro都是很好的框架,可以幫助開發(fā)者更快地在Web應(yīng)用程序中創(chuàng)建漂亮和易用的管理面板。他們的工作原理略有不同,但是您可以根據(jù)您的需求來決定使用哪種框架。現(xiàn)在,你只需按照以上步驟即可在您的應(yīng)用程序中配置和使用這兩個(gè)框架,確保您在學(xué)習(xí)和開發(fā)中最大的效率提升,讓您的應(yīng)用程序更快地上線。
以上就是Laravel開發(fā):如何使用Laravel Nova和AdminBro生成后臺(tái)管理界面?的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注www.xfxf.net其它相關(guān)文章!