Löst-Försöker få egendom för icke-objekt-Laravel

Solved Trying Get Property Non Object Laravel



Problem

Jag försöker upprepa namnet på användaren i min artikel och jag får | _+_ |. Mina koder:

Modeller

1. Nyheter







klassNyhetersträcker sigModell
{
offentlig fungeraPostat av()
{
lämna tillbaka $ detta->tillhör('App Användare');
}
skyddade $ bord = 'Nyheter';
skyddade $ ifyllbar = ['newsContent', 'newsTitle', 'Postat av'];
}

2. Användare



klassAnvändaresträcker sigModellredskapAutenticatableContract,
Auktoriserbar Kontrakt,
CanResetPasswordContract
{
använda sig avAutentiserbar,Godkänd,CanResetPassword;

skyddade $ bord = 'användare';

skyddade $ ifyllbar = ['namn', 'e-post', 'Lösenord'];

skyddade $ dold = ['Lösenord', 'remember_token'];

}

Kontroller

offentlig fungerashowArticle($ snigel)
{
$ artikel =Nyheter::var('snigel', $ snigel)->firstOrFail();
lämna tillbakase('artikel', kompakt ('artikel'));
}

Blad

{{ $ artikel->Postat av->namn }}

När jag försöker ta bort namn i bladet | _+_ | den matar ut | _+_ |, men när jag försöker lägga till -> -namnet där står det | _+_ | men jag har ett fältnamn i mitt bord och en | _+_ | modell. Har jag missat något?



Lösning

Returnerar din fråga matris eller objekt? Om du dumpar det kan du upptäcka att det är en array och allt du behöver är en arrayåtkomst ([]) istället för en objektåtkomst (->).





Andra åsikt

$ artikel->affisch->namn

till

$ artikel->affisch['namn']

Nästa är att lägga till en andra parameter i min behoortTo, från



lämna tillbaka $ detta->tillhör('App Användare');

till

lämna tillbaka $ detta->tillhör('App Användare', 'användar ID');

där | _+_ | är min främmande nyckel i nyhetstabellen.