Laravel Nova 安裝

2023-02-16 17:07 更新

要求

在安裝之前,Laravel Nova 有些要求,需要你注意一下:

  • Composer
  • Laravel Framework 5.6+
  • Laravel Mix
  • Node.js & NPM

安裝 Nova

只要購(gòu)買(mǎi)一份 Nova 許可,你就可以在 Nova 官網(wǎng)的「releases」部分下載一份 Nova 發(fā)行版。下載完包含 Nova 源碼的 Zip 文件后,需要在你 Laravel 應(yīng)用的 composer.json 文件里用 Composer 的「path」倉(cāng)庫(kù)安裝它。

首先,將 Nova 發(fā)行版壓縮包解壓到你的應(yīng)用根目錄下的 nova 文件夾里。只要解壓并放置 Nova 源代碼到合適的目錄,就應(yīng)更新 composer.json 文件。請(qǐng)將以下配置添加到 composer.json 文件中:

"repositories": [
    {
        "type": "path",
        "url": "./nova"
    }
],

隱藏文件

當(dāng)解壓 Nova 到 nova 文件夾后,請(qǐng)確認(rèn) Nova 的「隱藏」文件(例如.gitignore 文件)也包含在內(nèi)。

接下來(lái),將 laravel/nova 添加到 composer.json 的 require 字段:

"require": {
    "php": "^7.1.3",
    "fideloper/proxy": "^4.0",
    "laravel/framework": "5.6.*",
    "laravel/nova": "*"
},

修改 composer.json 文件之后,在控制臺(tái)終端運(yùn)行 composer update 命令:

composer update

最后,運(yùn)行 nova:install 和 migrateArtisan 命令。nova:install 命令將在你的應(yīng)用中安裝 Nova 的服務(wù)提供者,并發(fā)布資源文件:

php artisan nova:install

php artisan migrate

運(yùn)行完以上命令后,請(qǐng)確認(rèn) App\Providers\NovaServiceProvider 被添加到了你的 app.php 配置文件里。如果沒(méi)有,請(qǐng)手動(dòng)添加。當(dāng)然,如果你的應(yīng)用不使用 App 命名空間,你應(yīng)該按需更新該服務(wù)提供者的類(lèi)名。

默認(rèn)的 App\Nova\UserNova 資源引用了 App\User 模型。如果你的模型放在別的目錄或命名空間,請(qǐng)?jiān)谫Y源中調(diào)整此值:

public static $model = 'App\\Models\\User';

好的!接下來(lái),你可以在瀏覽器中訪(fǎng)問(wèn)應(yīng)用的 /nova 路徑,然后你會(huì)看到 Nova 管理面板,其中包含指向本文檔各部分的鏈接。

包的穩(wěn)定性

如果由于 minimum-stability 的設(shè)置導(dǎo)致無(wú)法為你的應(yīng)用安裝 Nova,請(qǐng)考慮將 minimum-stability 的值設(shè)置為dev、將 prefer-stable 的值設(shè)置為 true。這將允許為你的應(yīng)用安裝 Nova,同時(shí)仍保留優(yōu)先安裝穩(wěn)定發(fā)行版。

授權(quán) Nova

在你的 app/Providers/NovaServiceProvider.php 文件中,有一個(gè) gate 方法。此授權(quán) gate 控制了 非本地 環(huán)境對(duì) Nova 的訪(fǎng)問(wèn)。默認(rèn)當(dāng)應(yīng)用環(huán)境是 local 時(shí),任何人都可以訪(fǎng)問(wèn) Nova 面板。你可以按需自由修改此 gate 方法,以限制對(duì) Nova 的訪(fǎng)問(wèn):

/**
 * 注冊(cè) Nova gate。
 *
 * 此 gate 決定了誰(shuí)可以在非本地環(huán)境訪(fǎng)問(wèn) Nova 。
 *
 * @return void
 */
protected function gate()
{
    Gate::define('viewNova', function ($user) {
        return in_array($user->email, [
            'taylor@laravel.com',
        ]);
    });
}

更新 Nova

要更新你的 Nova 安裝版,可以從 Nova 官網(wǎng)下載一份發(fā)行版 Zip 文件。下載完后,用此 Zip 文件的內(nèi)容替換應(yīng)用根目錄下 nova 文件夾的內(nèi)容。在更新完目錄內(nèi)容后,你可以運(yùn)行 composer update 和 nova:publish 命令:

composer update

php artisan nova:publish

nova:publish 命令將會(huì)重新發(fā)布 Nova 的公共資源、配置、視圖和語(yǔ)言文件。此命令不會(huì)覆蓋已存在的配置、視圖或語(yǔ)言文件。如果想覆蓋已存在的文件,你可以在執(zhí)行它時(shí)使用 --force 標(biāo)志:

php artisan nova:publish --force

報(bào)告 Bug

如果你在 Laravel Nova 中發(fā)現(xiàn) Bug,請(qǐng)?jiān)?nbsp;Nova issues 的 GitHub 倉(cāng)庫(kù)提交 Issue 。


以上內(nèi)容是否對(duì)您有幫助:
在線(xiàn)筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)