Mit Laravel 5.3 müssen wir einige Variablen in die gemeinsame Layoutansicht einfügen app.blade.php
,
Der folgenden Code wurde in der boot()-Methode der AppServiceProvider.php
-Datei hinzugefügt:
public function boot()
{
view()->composer('layouts/app', function ($view) {
$siteInfo=SiteInfo::all();
dd($siteInfo);
$view->with('siteName',$siteInfo->name) // 这是line 22
->with('siteKeywords',$siteInfo->keywords)
->with('siteDescription',$siteInfo->description);
});
}
Der folgende Fehler tritt auf:
ErrorException in AppServiceProvider.php line 22:
Undefined property: Illuminate\Database\Eloquent\Collection::$name (View: D:\wnmp\www\laravel-5-3-dev\resources\views\pages\index.blade.php)
Die Position von Zeile 22 ist in AppServiceProvider.php kommentiert.
Das Ergebnis vondd($siteInfo);
ist so:
Können Sie nicht einen Pfeil verwenden, um den Wert des Attributs einer Menge zu ermitteln?
$siteInfo这是一个二维的呀,你可以使用->Array转换成数组去取值
显然不对,假设你的siteinfo表设计如下
id guid, name varchar(60), value varchar(60)
对于网站key_word,你应该取name字段为keyword的记录的value字段的值
所以你需要
这样取值