一個 Laravel 包,使用 Bootstrap 3.0 和 Pratt Landing Page 將預設 Laravel 腳手架/樣板切換到 AdminLTE 模板
請參閱此處的演示:
http://demo.adminlte.acacha.org/
如果您正在尋找 Laravel 4 版本,請使用 0.1.5 版本/標籤並查看 OLD-README.md
composer require " acacha/admin-lte-template-laravel "
最後發布文件:
php artisan vendor:publish --tag=adminlte --force
該軟體包使用(無需安裝):
brew install gnu-sed --with-default-names
該套件假設您的 Composer bin 資料夾路徑中有:
/YOUR_PATH_TO_HOME/.composer/vendor/bin
例如新增這一行:
export PATH= ${PATH} : ~ /.composer/vendor/bin
到你的 ~/.bashrc 文件
注意:在某些系統中,路徑可能不同,例如:
export PATH= ${PATH} : ~ /.config/composer/vendor/bin
請務必檢查您的環境。
這個套件安裝了 Laravel 路由,你在 paths.php 檔案中找不到它們。套件安裝的路由可以在檔案中找到:
https://github.com/acacha/adminlte-laravel/blob/master/src/Http/routes.php
AdminLTETemplateServiceProvider 包含的檔案:
https://github.com/acacha/adminlte-laravel/blob/master/src/Providers/AdminLTETemplateServiceProvider.php
您可以透過更改 config/app.php 檔案中 ServiceProviders 的順序來覆寫此路由,因此如果您輸入:
App Providers RouteServiceProvider::class
後
Acacha AdminLTETemplateLaravel Providers AdminLTETemplateServiceProvider::class
paths.php 檔案中的路由將覆寫預設的 adminlte-laravel 路由。
您也可以在routes.php 檔案中手動安裝路由。 Adminlte-laravel 使用與 Laravel make:auth 指令相同的路由,請參閱:
https://github.com/laravel/framework/blob/5.2/src/Illuminate/Auth/Console/stubs/make/routes.stub
所以你可以將此行加入到routes.php檔案中:
Route:: auth ();
Route:: get ( ' /home ' , ' HomeController@index ' );
並在 config/app.php 檔案中停用 AdminLTETemplateServiceProvider (考慮到 Adminte-laravel Facades 和自訂命令將不可用)。
請參閱問題 #69 以了解更多信息
安裝套件後,您必須按照任何 Laravel 專案的常規步驟登入管理介面:
AdminLTE 是一個免費的高階管理控制面板主題,基於 Abdullah Almsaeed 創建的 Bootstrap 3.x。看:
https://github.com/almasaeed2010/AdminLTE
Adminlte-laravel 使用套件 Creativeorange/gravatar (https://github.com/creativeorange/gravatar) 支持全球公認的頭像 (http://gravatar.com)。
此命令使用預設 adminlte 佈局將視圖新增至resources/views資料夾:
php artisan make:view about
此命令將選單項目新增至檔案config/menu.php :
php artisan make:menu link menuname
例子:
php artisan make:menu /contact
此命令使用以下命令將路由新增至路由檔案:
php artisan make:route linkname
例如,您可以使用以下方式新增帶有 URI /about 的路由routes/web.php檔案:
php artisan make:route about
此命令將此條目新增至routes/web.php
您可以使用選項type建立 3 種類型的路由:
範例:
php artisan make:route about --type=controller
這增加了以下內容:
Route:: get ( ' about ' , ' AboutController@index ' );
文件routes/web.php 。您可以透過以下方式選擇控制器名稱和方法:
php artisan make:route about MyController@method --type=controller
如果要建立資源控制器:
php artisan make:route about --type=resource
這增加了以下內容:
Route:: resource ( ' about ' , ' About@index ' );
文件routes/web.php 。
您也可以使用 option method使用其他 HTTP 方法建立路由:
php artisan make:route save --method=post
您也可以使用選項api新增路由到 api:
php artisan make:route save --api
然後路由將被加入到routes/api.php 。
最後使用選項-a在建立路由後新增操作:
php artisan make:route about -a
最後一個指令也建立一個名為about.blade.php的視圖。使用:
php artisan make:route about -a --type=controller
將會建立一個名為AboutController和方法索引的控制器檔案。
您可以透過以下方式諮詢所有選項:
php artisan make:route --help
該命令已在安裝過程中執行,您可以使用以下命令手動(重新)執行:
php artisan adminlte:publish
將套件中的所有必要文件發佈到 Laravel 專案。
僅將套件側邊欄發佈到 Laravel 項目,允許自訂側邊欄:
php artisan adminlte:sidebar
注意:當您使用adminlte-laravel install指令時,側邊欄已經發布。
使用 spatie/laravel-menu 將側邊欄視圖替換為側邊欄:
php artisan adminlte:menu
此指令也會安裝 spatie/laravel-menu 套件並建立位於config/menu.php 的預設選單。
重要提示:Spatie Laravel 選單需要 PHP7.0 或更高版本才能運作
執行 make:adminUserSeeder artisan 指令(請參閱下一節)並執行種子。此命令將預設管理員使用者新增至資料庫。
php artisan adminlte:admin
File /home/sergi/Code/AdminLTE/acacha/adminlte-laravel_test/database/seeds/AdminUserSeeder.php created
User Sergi Tur Badenas([email protected]) with the environemnt password (env var ADMIN_PWD) created succesfully !
此命令使用(如果存在)環境變數(.env 檔案)ADMIN_USER、ADMIN_EMAIL 和 ADMIN_PWD。如果此環境變數不存在,則使用者 git config (~/.gitconfig) 來取得數據,如果此資訊不存在,則使用 Admin ([email protected]) 和密碼 123456 作為預設值。
建立一個新種子以將管理員使用者新增至資料庫。使用:
php artisan make:adminUserSeeder
File /home/sergi/Code/AdminLTE/acacha/adminlte-laravel_test/database/seeds/AdminUserSeeder.php created
使用 acacha/laravel-social 套件向 Laravel Adminlte 添加(可選)社交登入/註冊支援是輕而易舉的事。在專案根資料夾中執行:
adminlte-laravel social
按照嚮導配置您的社交提供者 Oauth 資料並享受吧!
更多資訊請造訪 https://github.com/acacha/laravel-social。
刪除線
@ include ( ' auth.partials.social_login ' )
在檔案resources/views/auth/login.blade.php
和register.blade.php
中
https://packagist.org/packages/acacha/admin-lte-template-laravel
http://acacha.org/mediawiki/AdminLTE#adminlte-laravel
使用 phpunit 執行 Composer 腳本測試:
$ composer test
一旦將此套件安裝到 Laravel 專案中,就會安裝一些測試來測試套件功能。有兩種測試:功能/單元測試和瀏覽器測試。若要執行功能/單元測試,請執行:
./vendor/bin/phpunit
在新建立的 laravel 專案中安裝了 acacha-admintle.laravel 來測試該套件是否已正確安裝。您也可以使用 Laravel Dusk 執行瀏覽器測試(請先依照 https://laravel.com/docs/master/dusk 手動安裝 Dusk 套件):
php artisan dusk:install
touch database/testing.database.sqlite
php artisan serve --env=dusk.local &
php artisan dusk
您也可以在沙箱中測試此包,而無需安裝。運行腳本:
./test.sh
所有字串均使用 Laravel 本地化支援進行本地化:https://laravel.com/docs/master/localization
在 config/app.php 檔案中,您可以變更區域設定以變更語言。您可以使用標籤 adminlte_lang 僅安裝本地化檔案:
php artisan vendor:publish --tag=adminlte_lang --force
軟體包預設支援以下語言:英語、加泰隆尼亞語、西班牙語、荷蘭語和巴西葡萄牙語。如果您願意,請隨時提交其他語言的新拉取請求。
注意:Laravel 5.5+ 中不需要
Acacha llum 需要 GNU sed 才能運作,因此使用 GNU sed 替換 BSD sed:
brew install gnu-sed --with-default-names
檢查 sed 的版本:
man sed
sed GNU 版本路徑是:
$ which sed
/usr/local/bin/sed
代替 BSD sed 的預設路徑(MAC OS 上預設安裝):
/usr/bin/sed
更多資訊請參閱#58
執行命令:
php artisan adminlte:username
然後您可以使用使用者名稱而不是電子郵件進行登入。
注意:當我們使用使用者名稱登入時,如果使用者名稱登入失敗,則系統會嘗試使用引入的使用者名稱作為電子郵件登入。因此使用者也可以使用電子郵件登入。
若要返回電子郵件登錄,請從config/auth.php檔案中刪除欄位選項:
' providers ' = > [
' users ' => [
' driver ' => ' eloquent ' ,
' model ' => App U ser::class,
' field ' => ' username ' // Adminlte laravel. Valid values: ' email ' or ' username '
],
注意:將使用者名字段新增至使用者表所需的遷移需要:
composer require doctrine/dbal
您可以選擇為使用者名稱登入定義預設網域。新增網域選項:
' defaults ' => [
' guard ' => ' web ' ,
' passwords ' => ' users ' ,
' domain ' => ' defaultdomain.com ' ,
],
文件config/auth.php 。然後,如果使用者嘗試不使用網域登錄,則在日誌記錄時將附加預設網域。
因此,在前面的範例中,您可以在登入時輸入:
sergiturbadenas
system/javascript 會將其替換為:
Laravel adminlte 套件預設將 Laravel 翻譯發佈為 Javascript/Vue.js,並在 HTML 標頭中加入以下腳本:
< script >
//See https://laracasts.com/discuss/channels/vue/use-trans-in-vuejs
window.trans = @php
// copy all translations from /resources/lang/CURRENT_LOCALE/* to global JS variable
$lang_files = File::files(resource_path() . '/lang/' . App::getLocale());
$trans = [];
foreach ($lang_files as $f) {
$filename = pathinfo ( $f ) [ 'filename' ] ;
$trans [ $filename ] = trans ( $filename ) ;
}
$trans['adminlte_lang_message'] = trans('adminlte_lang::message');
echo json_encode($trans);
@endphp
</ script >
腳本位於部分刀片檔案(vendor/acacha/admin-lte-template-laravel/resources/views/layouts/partials/htmlheader.blade.php)
因此全域變數 window.trans 包含所有可在任何 Javascript 檔案中使用的 Laravel 翻譯。
同樣在檔案resources/assets/js/bootstrap.js程式碼部分:
Vue.prototype.trans = (key) => {
return _.get(window.trans, key, key);
};
允許在 vue 模板中直接使用 trans 函數:
{{ trans('auth.failed') }}
您也可以使用 Vue 元件內部程式碼:
this.trans('auth.failed')
Laravel Adminlte 訊息可使用前綴adminlte_lang_message :
{{ trans('adminlte_lang_message.username') }}
請隨意刪除/調整此文件以滿足您的需求。
請參閱變更日誌以了解最近變更的更多資訊。
有關詳細信息,請參閱貢獻和行為。
如果您發現任何與安全相關的問題,請發送電子郵件至 [email protected],而不是使用問題追蹤器。
麻省理工學院許可證 (MIT)。請參閱許可證文件以獲取更多資訊。
https://github.com/acacha/adminlte-laravel-installer