Ich habe ein model
im Namen von Template
und migration table
im Namen templates
, und ich bin mit einem column name
von templatedata
im mysql table
, die den JSON-Array halten, holen, während Sie versuchen, holen data
im view
ich erhalte eine Fehlermeldung,Wie JSON-Array in Laravel
im Anschluss ist mein Controller:
public function get_template($id)
{
$gettemplate = Template::findOrFail($id);
return view('nitseditor.theme', ['gettemplate' => $gettemplate]);
}
ich versuche, das Objekt wie folgt zu holen:
@foreach($gettemplate as $template)
<div class="branding">
<h1 class="logo">
<a href="index.html"><img src="{{ URL::asset($template->templatedata.content.logoimage) }}" alt="" width="25" height="26">NitsEditor</a>
</h1>
</div>
@endforeach
und finden meine JSON format
in der Tabelle:
[{
"content": {
"logo": {
"logoimage": "img/home/nitseditorlogo.png",
"logolink": "index.html"
},
"pages": [
{"pagename": "Mysite", "pagelink": "index.html"},
{"pagename": "Templates", "pagelink": "templates.html"},
{"pagename": "About Us", "pagelink": "aboutus.html"},
{"pagename": "Contact Us", "pagelink": "contactus.html"}
]
}
}]
ich folgende Störung zu erhalten:
Trying to get property of non-object (View: location of blade)
Warum loopen Sie "$ gettemplate", wenn es nur 1 Datensatz ist, wenn Sie es mit 'findOrFail ($ id)' holen? – TheFallen
@TheFallen Ich habe es für 'Seitenname' und' Pagelink' gemacht, ich meine, dafür muss ich eine Schleife machen. –
Mein Punkt ist, dass, wenn Sie '$ gettemplate' loopen, was ein einzelner Datensatz ist, Sie die Eigenschaften des * Template * -Objekts durchlaufen werden, die keine Objekte sind, und deshalb erhalten Sie einen Fehler. – TheFallen