mercredi 20 février 2019

Eloquent hasMany with foreign key on joint table

Assume this:

class List extends Model
{
    public function items(){
        return $this->hasMany(Items::class, 'c.class_id', 'class_id')
            ->rightjoin('items_classes as c', 'c.items_id', '=', 'items.id');
    }
}

The problem is that Eloquent prepends items to foreign key field and the final query is:

SELECT * FROM items
RIGHT JOIN items_classes as c, c.items_id = items.id
// here it is
WHERE items.c.class_id = 10

Even using DB::raw('c.class_id') didn't solve the problem.



via Chebli Mohamed

Aucun commentaire:

Enregistrer un commentaire