Laravel-admin v1.7.0版本釋出,在這個版本中,有下面的修改和變更
框架
- 增加
Admin::favicon()
方法,用來設定網站的favicon
- 增加
Admin::style()
方法,用來給當前頁面的加入css樣式 - 增加
Admin::html()
方法,用來給當前頁面的加入HTML程式碼 Widget\Box
元件支援設定框內滾動條- 移除表格頭部的重新整理按鈕,在頁面導航的右上角增加重新整理按鈕
模型表格
- 增加快捷搜尋功能, 參考文件
- 增加
Column::help()
方法,用來給列加上提示文字 - 增加
Column::gravatar()
方法,用來通過郵箱顯示Gravatar
頭像 - 增加
Column::carousel()
方法,用來在列表顯示一個圖片輪播效果 - 增加
Column::width()
方法,用來設定列的寬度 - 增加
Column::hide()
方法,用來設定表格列預設不顯示 - 增加
Column::filezise()
方法來更友好的顯示檔案大小 - 增加
Column::loading()
方法來更友好的顯示loading狀態 - 支援顯示JSON欄位操作
模型詳情
- 增加
Field::carousel()
方法, 用來在詳情頁顯示一個圖片輪播效果 - 增加
Field::filezise()
方法, 用來更友好的顯示檔案大小
模型Form
- 支援操作JSON欄位
- 表單刪除檔案增加確認提示框
- 表單
checkbox
支援通過匿名函式設定options
- 表單項增加
updateRules
和creationRules
方法,用來區分建立和更新場景的表單驗證規則 - 增加
File::retainable()
方法,用來設定刪除資料的時候保留檔案 listbox
支援通過ajax
載入選項- 增加
Timezone
表單項,用來選擇時區 - 增加
KeyValue
表單項,用來操作key-value結構的資料 - 增加
List
表單項,用來操作列表結構資料 - 增加
Form::fieldset()
方法,用來將多個表單項分組顯示 - 增加
Checkbox::canCheckAll()
方法, 用來給checkbox元件增加全選操作
元件Form
- 增強
Widget\Form
,方便form元件的資料處理, 參考文件
命令
- 優化了
admin:make
命令,使得生成的控制器檔案更加簡潔 admin:make
命令增加namespace
選項,用來設定建立的控制器的名稱空間- 增加
admin:form
命令,用來生成Form類 - 修復CSS/JS壓縮命令bug
配置
- 增加
enable_menu_search
配置,來控制左側選單搜尋的顯示 - 增加
minify_assets.excepts
配置,用來排除不需要被壓縮的資原始檔
總結
這個版本主要新增的feature包括下面幾個
資料表單
之前的版本中,定義了表單(Widget\Form)之後,需要再定義路由和對應的action來處理表單的提交資料,在這個版本中,簡化了這一些步驟,例如下面的表單:
class Setting extends Form
{
public $title = '配置';
public function handle(Request $request)
{
//dump($request->all());
return back();
}
public function form()
{
$this->text('title')->rules('required');
$this->textarea('desc')->rules('required');
}
public function data()
{
return [
'title' => 'Laravel admin',
'desc' => 'Laravel admin...',
];
}
}
表單提交之後請求會進入handle
方法中, 你可以在裡面實現資料的處理邏輯。另外在它的基礎上實現了選項卡表單和多步驟表單,更詳細的使用參考文件。
快捷搜尋
這個feature
實現了除了定義filter
之外的另外一種過濾資料的方式,支援使用類Github搜尋語法來搜尋資料表格中的資料,使用起來也非常方便
// 在grid中啟用
$grid->quickSearch();
這樣表頭會出現一個搜尋框:
填入類Github搜尋語法的內容來過濾資料,比如填入username:%laravel% status:(1,2,3)
提交查詢,表格的模型就會執行下面的查詢
$model->where('username', 'like', '%laravel%')->whereIn('status', [1, 2, 3]);
更詳細的使用參考文件
新增表單元件
新增了KeyValue
表單項來處理key-value
型別的資料:
$form->keyValue('column_name');
新增了List
表單項來處理一維陣列型別的資料:
$form->list('column_name');