Risolto – Cercando di ottenere proprietà di non oggetto – Laravel

Solved Trying Get Property Non Object Laravel

Problema

Sto cercando di ripetere il nome dell'utente nel mio articolo e ottengo |_+_|. I miei codici:

Modelli

1. Notizie



classeNotiziasi estendeModello
{
pubblico funzionePubblicato da()
{
Restituzione $questo->appartiene a('AppUtente');
}
protetto $tabella = 'notizia';
protetto $ compilabile = ['newsContent', 'titolo notizia', 'Pubblicato da'];
}

2. Utente



classeUtentesi estendeModelloattrezziAuthenticatableContratto,
Contratto Autorizzato,
CanResetPasswordContratto
{
utilizzoAutenticabile,Autorizzato,CanResetPassword;

protetto $tabella = 'utenti';

protetto $ compilabile = ['nome', 'e-mail', 'parola d'ordine'];

protetto $nascosto = ['parola d'ordine', 'remember_token'];

}

Controllore

pubblico funzionemostraArticolo($ lumaca)
{
$articolo =Notizia::dove('lumaca', $ lumaca)->firstOrFail();
RestituzioneVisualizza('articolo', compatto ('articolo'));
}

Lama

{{ $articolo->Pubblicato da->nome }}

Quando provo a rimuovere il nome nella lama |_+_| emette |_+_|, ma quando provo ad aggiungere il ->nome lì dice |_+_| ma ho un nome di campo nella mia tabella e un |_+_| modello. Mi sto perdendo qualcosa?



Soluzione

La tua query restituisce un array o un oggetto? Se lo scarichi, potresti scoprire che è un array e tutto ciò di cui hai bisogno è un accesso all'array ([]) invece di un accesso all'oggetto (->).

Seconda opinione

$articolo->manifesto->nome

a

$articolo->manifesto['nome']

Il prossimo è aggiungere un secondo parametro nel mio appartiene a, da



Restituzione $questo->appartiene a('AppUtente');

a

Restituzione $questo->appartiene a('AppUtente', 'ID utente');

in cui |_+_| è la mia chiave esterna nella tabella delle notizie.