Laravel Selección de 2 mesas a la vez

Paco Pinazo Guna :

Tengo una mesa de animales e imágenes.

Imágenes tiene Id_animal.

El problema es que en AnimalController estoy seleccionando los últimos 6 animales y quiero volver a sus imágenes al mismo tiempo.

No tengo ni idea de cómo hacerlo.

public static function getNewerAnimals()
{
    $animales = DB::table('animals')
    ->orderBy('date_found')
    ->limit(6)
    ->get();

    return $animales;
}

Tabla animales

Imágenes de mesa

Dilip Hirapara:

Se puede utilizar para unirse a unir dos tablas.

 $animales = DB::table('animals')
    ->orderBy('date_found')
    ->join('images','images.id_animal','animals.id')
    ->limit(6)
    ->get();
return view('viewname',compact('animales'))

Editar

En el archivo de la hoja

@foreach($animales as $animal)
    {{ $animal->nickname  }}
@endforeach

Y si desea utilizar por la relación, entonces tendrá hasManyrelación.

modelo animal

class Animal extends Model
{
    protected $table = 'animals';
    public function images()
    {
        return $this->hasMany('App\Image','id_animal','id')->where('type','interest');
    }
}

Y en el controlador

$animales = Animal::with('images')
    ->orderBy('date_found')
    ->limit(6)
    ->get();

Supongo que te gusta

Origin http://10.200.1.11:23101/article/api/json?id=373579&siteId=1
Recomendado
Clasificación