Laravel France

No query results for model - findOrfail

Avatar de Tristan
Tristan

Bonsoir j'ai actuellement un petit problème avec "findOrFail"

@foreach($musics as $music)
            <tr>
                <th>{{ $music->id }}</th>
                <td>{{ $music->name }}</td>
				<td>{{ $music->findOrFail($music->genre_id)->genre->name }}</td>
				<td>{{ $music->findOrFail($music->add_by)->user->name }}</td>
			</tr>
		@endforeach

Quand j'essais d'aller sur cette page l'erreur suivante s'affiche "No query results for model [App\Music] 1 (View: /laravel-musique/resources/views/music/index.blade.php) " et quand je retire les deux lignes avec findOrFail la page fonctionne.

Model Music

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Music extends Model
{
    
    
    protected $fillable = ['name', 'genre_id', 'add_by'];
    
    public function genre()
    {
        return $this->hasOne('App\Genre', 'id');
    }

    public function user()
    {
        return $this->hasOne('App\User', 'id');
    }
}

Model Genre

<?php

namespace App;

use Illuminate\Database\Eloquent\Model;

class Genre extends Model
{

    protected $fillable = ['name' ,'description'];

    public function musics()
    {
        return $this->hasMany('App\Music');
    }
}

Pouvez-vous m'aider ? :)

Posté il y a 3 mois
Avatar de CinquièmeDimension
CinquièmeDimension

Salut,

Tu es certainque tu as des enregistrement qui correspondent. Parceque c'est justement le principe de findOrFail que fail si ça find pas... Essaye juste avec find() au lieu de findOrFail()

Posté il y a 3 mois

Vous ne pouvez pas répondre à ce sujet.