根據官方描述,大致整理以下介紹重點:

Voyager 是什麼?

Voyager 是一個 admin interface,可以很輕易的為你的 app 建構 CRUD 功能,建構 Menu 選單,以及管理 media 檔案 ,此外,在管理介面的 Database Manager 可以直接用來管理資料庫及資料表,BREAD (Browse, Read, Edit, Add, & Delete) 功能則是可以很簡便的就直接設定資料表欄位在哪些時候要出現,以及他的功能屬性是什麼(文字欄位,選單,圖片..),該欄位的驗證規則…(詳細請參考 BREAD說明)

Voyager 不是什麼?

不是傳統的內容管理系統(CMS),部落格平台,當然也不是 wordpress 😜

雖然如此,你仍可以把 voyager 用來作為 CMS或 blog,一切都是可以由你自行決定

只要透過 Laravel+Voyager,你就能建立多種組合後台,並且是非常簡易的就能夠達成這些目的。

接下來,說明基本的安裝流程:

安裝

composer require tcg/voyager

設定資料庫連線

設定 laravel .env 資料庫連線

DB_HOST=localhost
DB_DATABASE=homestead
DB_USERNAME=homestead
DB_PASSWORD=secret

版本小於Laravel 5.4 需設定 service providers

config/app.php

<?php

'providers' => [
    // Laravel Framework Service Providers...
    //...
    
    // Package Service Providers
    TCG\Voyager\VoyagerServiceProvider::class,
    // ...
    
    // Application Service Providers
    // ...
],

執行安裝

Voyager 在執行安裝提供了一個 dummy 選項,dummy data 包含了1個admin帳戶,1個demo page,4個 demo posts, 2個分類以及7個設定。

你可以自行決定是否使用

若不使用 dummy data ,可以直接執行下方指令

php artisan voyager:install

如果要使用 dummy data ,則執行

php artisan voyager:install --with-dummy

如果使用 dummy data,則可以使用下方預設帳密(dummy user)登入 (注意,這個dummy user只有當資料庫沒有預設的 user data 時,才會建立)

email: admin@admin.com
password: password

登入後台

執行完畢之後,就能啟動server登入後台

http://yourdomain/admin

Specified key was too long error 錯誤處理

若使用過舊的 mysql版本,在執行 dummy 可能會發生錯誤,Laravel 5.4: Specified key was too long error

則可以開啟 AppServiceProvider.php 設定:

<?php
use Illuminate\Support\Facades\Schema;

public function boot()
{
    Schema::defaultStringLength(191);
}

使用者

前面提到,如果使用 dummy data 建立專案,會自動產生預設帳密(dummy user) (注意,這個dummy user只有當資料庫沒有預設的 user data 時,才會建立)

email: admin@admin.com
password: password

如果已經有現成的user存在,則可以透過以下方式指派管理員權限給使用者

php artisan voyager:admin your@email.com

如果沒有透過 dummy data 建立預設使用者,仍可以在 voyager 執行完畢之後,手動建立管理員

php artisan voyager:admin your@email.com --create

在建立管理員時,將會提示您輸入該管理員的名字及密碼

請移除 public/storage/ 資料夾

rm /public/storage/

再重整畫面