Vyřešeno-Pokus o získání majetku bez objektu-Laravel

Solved Trying Get Property Non Object Laravel

Problém

Snažím se zopakovat jméno uživatele ve svém článku a dostávám | _+_ |. Moje kódy:

Modely

1. Novinky



třídaZprávyrozšiřujeModelka
{
veřejnost funkcezveřejněno()
{
vrátit se $ toto->patří('App User');
}
chráněný $ stůl = 'zprávy';
chráněný $ fillable = ['newsContent', 'newsTitle', 'zasláno'];
}

2. Uživatel



třídaUživatelrozšiřujeModelkanářadíAuthenticatableContract,
Autorizovatelná smlouva,
CanResetPasswordContract
{
použitíOvěřitelné,Autorizovatelné,CanResetPassword;

chráněný $ stůl = 'uživatelé';

chráněný $ fillable = ['název', 'e-mailem', 'Heslo'];

chráněný $ skryté = ['Heslo', 'remember_token'];

}

Ovladač

veřejnost funkceshowArticle($ slimák)
{
$ článek =Zprávy::kde('slimák', $ slimák)->firstOrFail();
vrátit sePohled('článek', kompaktní ('článek'));
}

Čepel

{{ $ článek->zveřejněno->název }}

Když se pokouším odstranit jméno z čepele | _+_ | vydává | _+_ |, ale když se tam pokusím přidat -> jméno, říká to | _+_ | ale v tabulce mám název pole a | _+_ | Modelka. Uniká mi něco?



Řešení

Vrací váš dotaz pole nebo objekt? Když to vyhodíte, možná zjistíte, že je to pole a vše, co potřebujete, je přístup k poli ([]) místo přístupu k objektu (->).

Druhý názor

$ článek->plakát->název

na

$ článek->plakát['název']

Dále je třeba přidat druhý parametr do mého AmongTo, from



vrátit se $ toto->patří('App User');

na

vrátit se $ toto->patří('App User', 'uživatelské ID');

ve kterém | _+_ | je můj cizí klíč v tabulce zpráv.