为了账号安全,请及时绑定邮箱和手机立即绑定

我在让 yajra laravel 数据表编辑器教程工作时遇到问题

我在让 yajra laravel 数据表编辑器教程工作时遇到问题

PHP
繁星点点滴滴 2022-10-14 14:41:31
我是 Laravel 和 Datatables/Editor 的新手。我在另一个 PHP 项目中使用了 DataTables 编辑器,但无法通过Yajra 插件让它在 Laravel 中工作。我按照本教程https://yajrabox.com/docs/laravel-datatables/master/editor-tutorial进行操作。一切都编译得很好,但结果并没有像我预期的那样工作。“编辑”和“删除”按钮显示为灰色且行不可选择。我怀疑我要么不包括 DataTables/Editor 脚本,要么解压缩 Editor.zip(不在教程中)。我在屏幕上看到的图像我正在使用: - PHP 版本:7.4.2 - Laravel 版本:6.17.1 - Laravel-DataTables Editor PHP 1.9.2(付费版本-zip 文件重命名为 Editor.zip 并包含在根文件夹中)网页.php   <?phpuse App\DataTables\UsersDataTablesEditor;Route::get('/', function () {    return view('welcome');});Auth::routes();Route::get('/home', 'HomeController@index')->name('home');Route::get('/users', 'UsersController@index')->name('users.index');// from https://yajrabox.com/docs/laravel-datatables/master/editor-tutorialRoute::post('/users', 'UsersController@store')->name('users.store');// from https://yajrabox.com/docs/laravel-datatables/master/editor-usageRoute::post('editor', function(UsersDataTablesEditor $editor) {    return $editor->process(request());});用户数据表编辑器.php<?phpnamespace App\DataTables;use App\User;use Illuminate\Database\Eloquent\Model;use Illuminate\Validation\Rule;use Yajra\DataTables\DataTablesEditor;class UsersDataTableEditor extends DataTablesEditor{    protected $model = User::class;    /**     * Get create action validation rules.     *     * @return array     */    public function createRules()    {        return [            'email' => 'required|email|unique:' . $this->resolveModel()->getTable(),            'name'  => 'required',        ];    }    /**     * Get edit action validation rules.     *     * @param Model $model     * @return array     */    public function editRules(Model $model)    {        return [            'email' => 'sometimes|required|email|' . Rule::unique($model->getTable())->ignore($model->getKey()),            'name'  => 'sometimes|required',        ];    }
查看完整描述

1 回答

?
慕虎7371278

TA贡献1802条经验 获得超4个赞

在这里找到答案https://www.gitmemory.com/issue/yajra/laravel-datatables-editor/46/552975895


views/layouts/app.blade.php,就在</head>之前


<link rel="stylesheet" type="text/css" href="https://cdn.datatables.net/select/1.3.1/css/select.dataTables.min.css"/>

</head>

views/layouts/app.blade.php,就在</body>之前


<script type="text/javascript" src="https://cdn.datatables.net/select/1.3.1/js/dataTables.select.js"></script>

    @stack('scripts')

</body>

应用程序/DataTables/UsersDataTable.php


return $this->builder()

                    ->setTableId('users-table')

                    ->columns($this->getColumns())

                    ->minifiedAjax()

                    ->dom('Bfrtip')

// ---------------------------------------------

                    ->select(true)

//---------------------------------------------

                    ->orderBy(1)

                    ->buttons(

                        Button::make('create')->editor('editor'),

                        Button::make('edit')->editor('editor'),

                        Button::make('remove')->editor('editor'),

                        Button::make('export'),

                        Button::make('print'),

                        Button::make('reset'),

                        Button::make('reload')

                    )

                    ->editor(

                        Editor::make()

                            ->fields([

                                Fields\Text::make('name'),

                                Fields\Text::make('email'),

                                Fields\Password::make('password'),

                            ])

//---------------------------------------------

                            ->idSrc(['id'])

//---------------------------------------------

                    );


查看完整回答
反对 回复 2022-10-14
  • 1 回答
  • 0 关注
  • 67 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信