ich folgende Tabellenstruktur habe:Eloquent Beziehung in Laravel
Table Name - Users
Column: id, name, email, etc
Table Name - Plugins
Column: id, theme_id, type_id, code,
Table Name - Templates
Column: id, theme_id, user_id, templatedata
Table Name - Userplugins
Column: id, user_id, plugins_id, contents
Jetzt bin ich die Strecke mit der ID der templates
Aufruf, bei der templatedata
JSON
Daten hat, ich bin in der Lage zu bekommen Plugins
code
durch folgenden Code in meiner Blade-Datei als:
@foreach($gettemplate as $renderer)
{!! $plugins->find($renderer)->code !!}
@endforeach
aber ich bin nicht in der Lage Inhalte in der UserPlugins
Tabelle zu holen. Im Anschluss ist mein controller
wo ich versuche, dies zu tun:
public function get_template($id)
{
$template = Template::findOrFail($id);
$gettemplate = json_decode($template->templatedata);
$plugins = Plugins::all();
$user = User::findorFail($id);
return $user->userplugins()->contents;
//return view('nitseditor.test', ['plugins' => $plugins, 'gettemplate' => $gettemplate, 'user' => $user]);
}
Ich habe gerade die Ausgabe zu überprüfen, meine Ansicht Kommentar gesetzt. Ich habe die relationship
in der model
meine App/User.php
Datei definiert enthält:
public function userplugins(){
return $this->hasMany('App\UserPlugin');
}
Und in App\UserPlugin.php
Datei Ich habe:
protected $fillable = [
'contents',
];
ich die folgende Fehlermeldung erhalten:
Undefined property: Illuminate\Database\Eloquent\Relations\HasMany::$contents
Bitte helfen Sie mir, Danke.