界面

代码

<?php

namespace App\Admin\Controllers\Demo;

use App\Http\Controllers\Controller;
use App\Models\Article;
use Encore\Admin\Form;
use Encore\Admin\Grid;
use Encore\Admin\Facades\Admin;
use Encore\Admin\Layout\Content;
use Encore\Admin\Controllers\ModelForm;
use Encore\Admin\Widgets\Tab;

class ArticleController extends Controller
{
    use ModelForm;
    ...

    protected function grid()
    {
        return Admin::grid(Article::class, function (Grid $grid) {

            $grid->model()->ordered();

            $grid->id('ID')->sortable();

            $grid->title()->editable();
            $grid->content()->editable();
            $grid->picture()->image();

            $grid->order()->orderable();

            $grid->created_at();
            $grid->updated_at();
        });
    }

    protected function form()
    {
        return Admin::form(Article::class, function (Form $form) {

            $form->display('id', 'ID');

            $form->text('title')->rules('required');
            $form->textarea('content')->rules('required');
            $form->image('picture');

            $form->display('created_at', 'Created At');
            $form->display('updated_at', 'Updated At');
        });
    }

    ...
}

模型

<?php

namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Spatie\EloquentSortable\Sortable;
use Spatie\EloquentSortable\SortableTrait;

class Article extends Model implements Sortable
{
    use SortableTrait;

    protected $table = 'demo_articles';

    public $sortable = [
        'order_column_name' => 'order',
        'sort_when_creating' => true,
    ];
}

表结构

CREATE TABLE `demo_articles` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `title` varchar(190) COLLATE utf8_unicode_ci NOT NULL,
  `content` varchar(255) COLLATE utf8_unicode_ci NOT NULL,
  `picture` varchar(255) COLLATE utf8_unicode_ci DEFAULT NULL,
  `order` int(11) NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci

results matching ""

    No results matching ""