所以我在Laravel 5中的一个小型CMS上工作,而我不能完全得到的第一件事就是将变量传递给视图。
我见过像
这样的东西 return View('view', array('name' => 'your name here'));
视图编辑器中的变量
public function compose($view) {
$view->with(Config::get('configfile'));
}
但我仍然想知道是否有更好/更优雅的方式来做到这一点。例如,对于第一种方法,我必须在每个视图中给它那个数组,这看起来很麻烦,而对于视图作曲家来说,感觉应该有一个更好的解决方案。
是否有推荐的方法在视图上推送这些变量?
另外,我正在谈论每个视图中需要的一组变量。例如网站的名称和口号。
感谢。
答案 0 :(得分:1)
您是否考虑过view()->share
查看文档Sharing Data with All Views
<?php
namespace App\Providers;
class AppServiceProvider extends ServiceProvider
{
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
view()->share('key', 'value');
}
}
它允许您与所有视图共享数据。如果您需要在大多数视图中访问它,我没有看到任何原因导致您无法以这种方式加载所有配置。
答案 1 :(得分:0)
您可以使用路径模型绑定:https://laravel.com/docs/5.2/routing#route-model-binding进行特定于模型的数据绑定。除此之外,没有(实际)方法可以做到这一点。