gpt4 book ai didi

php - 扩展核心并在 Laravel 中显示每个页面中的数据

转载 作者:可可西里 更新时间:2023-11-01 13:19:06 24 4
gpt4 key购买 nike

按照指南,我有

1)创建服务提供者

class ViewComposerServiceProvider extends ServiceProvider
{
/**
* Bootstrap the application services.
*
* @return void
*/
public function boot()
{
view()->composer('template', function ($view) {
$view->with('series_list', Series::all());
});
}

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

2) 注册提供商

 App\Providers\ViewComposerServiceProvider::class,

3) 并回显模板中的变量

{!! var_dump($series_list)  !!}

问题是:

Route::get('/', 'HomeController@index');
Route::get('product/view/{id}', 'ProductController@view');
Route::get('product/detail/{id}', 'ProductController@detail');
Route::get('/page/contact', 'PageController@contact');

PageController 和 HomeController 可以显示 $series_list,但 ProductController 会返回错误:

Undefined variable: series_list in the template

这是产品 Controller :

class ProductController extends Controller
{
/**
* Create a new controller instance.
*
* @return void
*/
public function __construct()
{
//$this->middleware('auth');
}

/**
* Show the application dashboard.
*
* @return \Illuminate\Http\Response
*/
public function view($id = 1)
{
return view('product/list');
}

public function detail($id = 1)
{
return view('product/detail');
}
}

非常感谢您的帮助。

最佳答案

另一种方式,更短一些

class AppServiceProvider extends ServiceProvider
{
// other methods

public function boot()
{
$series = Series::all();
view()->share('series_list', $series);
}

// other methods

}

关于php - 扩展核心并在 Laravel 中显示每个页面中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37395465/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com