根據官方描述,大致整理以下介紹重點:
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
在建立管理員時,將會提示您輸入該管理員的名字及密碼
symlink(): No such file or directory
請移除 public/storage/ 資料夾
rm /public/storage/
再重整畫面