Support the ongoing development of Laravel.io →
Eloquent

I have structure like this:

orders
    id - integer
    name - string

order_details
    id - integer
    order_id - integer
    part_id - integer

parts
    id - integer
    title - string

So I'm doing: return $this->hasManyThrough('App\Models\AutoPart\Part', 'App\Models\Order\Part', 'order_id', 'id');

The problem is in query:

SELECT `prt_apt_parts`.*,
 `prt_ord_order_parts`.`order_id`
FROM `prt_apt_parts`
INNER JOIN `prt_ord_order_parts` ON `prt_ord_order_parts`.`id` = `prt_apt_parts`.`id`
WHERE `prt_ord_order_parts`.`order_id` IN (?)

As you can see it joins prt_ord_order_parts.id but I need prt_ord_order_parts.part_id. Is somehow possible to change it?

Last updated 3 years ago.
0

Sign in to participate in this thread!

PHPverse

Your banner here too?

Moderators

We'd like to thank these amazing companies for supporting us

Your logo here?

Laravel.io

The Laravel portal for problem solving, knowledge sharing and community building.

© 2025 Laravel.io - All rights reserved.