Fai*_*wan 2 php laravel laravel-5 laravel-5.3
我有一些我想从数据库中获取的动态数据并将其传递给所有视图。我试图从互联网上举一些例子,但它们似乎在我的情况下不起作用
public function boot(){}
Run Code Online (Sandbox Code Playgroud)
我无法对其进行数据库查询,只能传递硬编码值。我尝试过的另一种方法是使用基本控制器,但是在访问变量时视图给了我错误
$query = DB::table('users')->first();
\View::share('user', $query);
Run Code Online (Sandbox Code Playgroud)
任何人都有基于 BaseController 的解决方案将不胜感激,如果我错过了什么请提醒我
根据https://laravel.com/docs/5.4/views#sharing-data-with-all-views上的文档:
有时,您可能需要与应用程序呈现的所有视图共享一段数据。您可以使用视图外观的共享方法来实现。通常,您应该在服务提供者的引导方法中调用共享。
再次作为该站点的示例,您应该将其添加到您的服务提供商之一:
class AppServiceProvider extends ServiceProvider
{
public function boot()
{
if (!app()->runningInConsole()) {
$query = DB::table('users')->first();
\View::share('user', $query);
}
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1665 次 |
| 最近记录: |