首頁  >  文章  >  php框架  >  Laravel開發:如何使用Laravel Nova和AdminBro產生後台管理介面?

Laravel開發:如何使用Laravel Nova和AdminBro產生後台管理介面?

WBOY
WBOY原創
2023-06-15 18:01:291304瀏覽

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應用程式中建立漂亮和易用的管理面板。他們的工作原理略有不同,但是您可以根據您的需求來決定使用哪種框架。現在,你只需按照上述步驟即可在您的應用程式中配置和使用這兩個框架,確保您在學習和開發中最大的效率提升,讓您的應用程式更快地上線。

以上是Laravel開發:如何使用Laravel Nova和AdminBro產生後台管理介面?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn