Este pacote fornece uma maneira eSay de integrar uvasjs no seu proejct de Laravel.
composer require jd-dotlogics/laravel-grapesjs
php artisan vendor:publish --tag="laravel-grapesjs"
php artisan migrate
Adicione a coluna 'gjs_data' à tabela de banco de dados do modelo (por exemplo, página), para a qual você usará o editor.
Implementar a interface editável e usar o traço de edição para a classe Model Class
use Illuminate Database Eloquent Model ;
use Dotlogics Grapesjs App Traits EditableTrait ;
use Dotlogics Grapesjs App Contracts Editable ;
class Page extends Model implements Editable
{
use EditableTrait;
. . .
}Route:: get ( ' pages/{page}/editor ' , ' PageController@editor ' ); <?php
namespace App Http Controllers ;
use App Models Page ;
use Illuminate Http Request ;
use Dotlogics Grapesjs App Traits EditorTrait ;
class PageController extends Controller
{
use EditorTrait;
. . .
public function editor (Request $ request , Page $ page )
{
return $ this -> show_gjs_editor ( $ request , $ page );
}
. . .
}
Os espaços reservados são como o código curto no WordPress. A sinax do espaço reservado é
[[This-Is-Placeholder]]
Crie um arquivo chamado "this-s-claceholder.blade.php" no diretório "/Recursos/Views/fornecedor/Laravel-GrapesJS/Planeholders".
O espaço reservado será substituído pelo conteúdo do arquivo relativo da lâmina "this-s-placeholder.blade.php"
Você pode criar modelos globais (ou blocos) no diretório "/Recursos/Views/fornecedor/Laravel-GRAPESJS/Modelos". E os modelos/blocos estarão disponíveis na seção de blocos do Edittor. Você também pode criar modelos/blocos específicos do modelo definindo GetTemplatesPath/getGJSBlockspath no modelo
public function getTemplatesPath (){ return ' pages_templates ' ; }Isso procurará modelos no diretório "Laravel-agresj :: PAGES_TEMPLATES".
Você também pode retornar NULL desses métodos para ocultar modelos/blocos para qualquer modelo.
O modelo "editável" (por exemplo) terá duas propriedades públicas, CSS e HTML. No seu arquivo de lâmina, você pode usar essas propriedades para exibir o conteúdo.
< style type = " text/css " >
{!! $page -> css ! !}
</ style >
{!! $page -> html ! !}
Obrigado por usar.