starsoft/laravel-editor

用于在 Laravel 中使用 Grapes.js 的包

1.1.8 2022-05-26 11:50 UTC

This package is auto-updated.

Last update: 2024-09-26 16:36:08 UTC


README

通过 composer 安装。

composer require starsoft/laravel-editor

要开始使用 LaraEditor,请按照以下步骤操作

  1. 将 'gjs_data' 列添加到您将要使用 Editor 的模型中。

  2. 实现 Editable 接口到模型类

  3. 将 Editable 特性添加到模型类中

  4. 在模型中实现所需方法,并创建 2 个用于加载和存储编辑器内容的路由

  5. 创建一个 EditorContentController 控制器,并添加以下方法

    /**
     * Display a listing of the resource.
     *
     * @return Response
     */
    public function index(Page $page)
    {
        return $page->getEditor();
    }

    /**
     * Store a newly created resource in storage.
     *
     * @param Request $request
     * @return Response
     */
    public function store(Request $request, Page $page)
    {
        return $page->saveEditorData($request);

    }

    public function templates(Page $page)
    {
       return array_merge(
           $page->getTemplatesFromPath(config('cms.templatesPath')),
           $page->getBlocksFromPath(config('cms.blocksPath')),
        );
    }
  1. 创建以下路由
Route::get('page-customize/{page}', [PageEditorController::class, 'index'])->name('page-customize.index');
Route::post('page-customize/{page}', [PageEditorController::class, 'store'])->name('page-customize.store');
Route::get('page-customize/{page}/templates', [PageEditorController::class, 'templates'])->name('page-customize.templates');
  1. 发布并运行迁移文件
php artisan vendor:publish --provider="LaraEditor\LaraEditorServiceProvider" --tag="migrations"
php artisan vendor:publish --provider="Spatie\MediaLibrary\MediaLibraryServiceProvider" --tag="migrations"
php artisan migrate