flynsarmy/db-blade-compiler

从 Eloquent 模型字段渲染 Blade 模板

v9.0.2 2024-02-05 05:03 UTC

This package is auto-updated.

Last update: 2024-09-06 00:26:31 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,但接受 Model 实例而不是视图路径。

$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 许可证