如何在laravel中创建将查询值获取到页眉和页脚的通用函数

如何在laravel中创建将查询值获取到页眉和页脚的通用函数,laravel,Laravel,我获取了一个问题,我想从页眉或页脚中的数据库中获取查询值。有人可以帮我如何在页眉或页脚模板中获取(设置或用户)表值 请查看我的AppServiceProvider namespace App\Providers; use Illuminate\Support\ServiceProvider; use DB; class AppServiceProvider extends ServiceProvider { /** * Bootstrap any application se

我获取了一个问题,我想从页眉或页脚中的数据库中获取查询值。有人可以帮我如何在页眉或页脚模板中获取(设置或用户)表值

请查看我的AppServiceProvider

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use DB;
class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
       $employeedata = DB::table('employees')->get();
       return view('partials.sidebar');
    }

    /**
     * Register any application services.
     *
     * @return void
     */
    public function register()
    {

    }

您可以通过使用view composer来实现这一点

步骤1

在项目的视图目录中创建两个文件header.blade.phpfooter.blade.php文件

步骤2

转到应用程序的AppServiceProvider.php文件的
boot()
方法

$query 1 = ""; // write your query here

view()->composer('header', function($view) use ($query){
        $view->with('query',$query);
    });

view()->composer('footer', function($view) use ($query){
        $view->with('query',$query);
    });
现在,在header.blade.php&footer.blade.php文件中,使用
{{{$query}}
可以访问查询对象


您可以通过任何方法正常传递变量,就像您根据修改后的问题在视图中从控制器传递一样

更改服务提供商的引导方法,如下所示

public function boot()
{
   $employeedata = DB::table('employees')->get();

    View::composer('partials.sidebar', function($view) use($employeedata) {
    $view->with('employeedata',$employeedata);
    });
}
然后您可以像这样访问sidebar.blade.php中的员工日期

{{ $employeedata }}

我不太明白你的问题,请注意语法并添加更多细节。我的意思是我想从数据库中获取页眉或页脚的值。我在哪里可以创建公共函数?如果你想说的是“从数据库中获取值并在页眉/页脚中显示”,那么我会使用全局加载的ViewComposer,这样,您就可以在任何地方显示所获取的值。页脚、页眉是否在所有页面上都是通用的?请参阅AppServiceProvider.php第20行:未定义变量:employeedata(视图:E:\xampp\htdocs\loginmanagement\u log3\resources\views\layouts\template.blade.php)(视图:E:\xampp\htdocs\loginmanagement\u log3\resources\views\layouts\template.blade.php)您正在将数据传递到sidebar.blade.php,然后您将如何在template.blade.php获取数据。如果您希望传递到模板,则如上所述为模板视图创建另一个视图生成器。我也遇到了这个问题,您可以在闭包中检查我的更新答案,您必须使用
使用
。请尝试我的更新答案。是的,但我包括在template.blade.php侧栏中,请参阅@include('partials.sidebar')。非常感谢您的帮助。