ahmed1amen/db-blade-compiler

从 Eloquent 模型字段渲染 Blade 模板

v1 2020-12-10 02:05 UTC

This package is auto-updated.

Last update: 2024-09-10 10:23:22 UTC


README

从 Eloquent 模型字段渲染 Blade 模板

此包从 Eloquent 模型中的 blade 语法字段生成并返回编译后的视图。

安装(Laravel v < 5)

在 composer.json 中要求此包并运行 composer update(或直接运行 composer require flynsarmy/db-blade-compiler:1.*

"flynsarmy/db-blade-compiler": "1.*"

更新 composer 后,将 ServiceProvider 添加到 app/config/app.php 中的 providers 数组

'Flynsarmy\DbBladeCompiler\DbBladeCompilerServiceProvider',

并在同一文件中将 Facade 添加到 aliases 数组

'DbView'          => 'Flynsarmy\DbBladeCompiler\Facades\DbView',

您还可以选择性地发布配置文件

php artisan config:publish flynsarmy/db-blade-compiler

安装(Laravel 5.x)

在 composer.json 中要求此包并运行 composer update(或直接运行 composer require flynsarmy/db-blade-compiler:2.*

"flynsarmy/db-blade-compiler": "*"

DbBladeCompilerServiceProvider 默认自动发现并注册,但如果你想要自己注册它
请将 ServiceProvider 添加到 app/config/app.php 中的 providers 数组

'Flynsarmy\DbBladeCompiler\DbBladeCompilerServiceProvider',

DbView Facade 也默认自动发现,但如果你想要手动添加它
请将 Facade 添加到 config/app.php 中的 aliases 数组

'DbView'          => 'Flynsarmy\DbBladeCompiler\Facades\DbView',

您还必须发布配置文件

php artisan vendor:publish --provider="Flynsarmy\DbBladeCompiler\DbBladeCompilerServiceProvider"

使用方法

此包提供了一个与 View 语法相同的 DbView Facade,但接受模型实例而不是视图路径。

$template = Template::first();
return DbView::make($template)->with(['foo' => 'Bar'])->render();

由于你将模型传递给 DbView::make(),db-blade-compiler 需要知道哪个字段需要编译。默认情况下这是 content,但你可以使用以下任何一种方法来设置使用的字段

return DbView::make($template, ['foo' => 'Bar'], [], 'excerpt')->render();
return DbView::make($template)->field('excerpt')->with(['foo' => 'Bar'])->render();

您可以在包配置中设置默认列。您可以通过在包配置中启用缓存配置来启用从 Eloquent 模型中的 blade 语法字段编译视图的缓存操作。默认情况下,此选项已禁用。

许可证

db-blade-compiler 是开源软件,许可协议为 MIT 许可证