flynsarmy / db-blade-compiler
从 Eloquent 模型字段渲染 Blade 模板
Requires
- php: >=7.1
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 许可证