Prefetching from multiple models
You don't need prefetch. Prefetch is for when the direction of traversal is reversed, e.g. you have a list of users and you want to get all their kits as well.

Just do joins (you'll need aliases because you reference User multiple times):

```python

OrderUser = User.alias()
OrderApprover = User.alias()
KitClaimer = User.alias()
KitCanceller = User.alias()
q = (Kit.select(Kit, Order, OrderUser, OrderApprover, KitClaimer, KitCanceller)
     .join_from(Kit, Order)
     .join_from(Order, OrderUser, JOIN.INNER, on=Order.user)
     .join_from(Order, OrderApprover, JOIN.INNER, on=Order.approved_by_user)
     .join_from(Kit, KitClaimer, JOIN.LEFT_OUTER, on=Kit.claimed_by_user)
     .join_from(Kit, KitCanceller, JOIN.LEFT_OUTER, on=Kit.cancelled_by_user))
```
Hi all! Hoping everyone is safe!

I've read the documentation about N+1 queries and prefetch, but I'm facing a strange behavior.
Let's say I have the following models:

```
Users

Orders
     user (FK)
     approved_by_user (FK)

Kits
     order (FK)
     claimed_by_user (FK)
     cancelled_by_user (FK)
```
```python
    # I can query for Kits and prefetch Users:
    for kit in prefetch(Kits.select(), Users):
        print(kit.claimed_by_user)
        print(kit.cancelled_by_user)
    # 👍 Works fine, no N+1 queries 🎉

---
    # or query for Kits and prefetch Orders:
    for kit in prefetch(Kits.select(), Orders):
        print(kit.order)
    # 👍 Works fine, no N+1 queries 🎉

---
    # But I can't prefetch both Users and Orders:
    for kit in prefetch(Kits.select(), Orders, Users):
        print(kit.claimed_by_user)
        print(kit.cancelled_by_user)
        print(kit.order)  # It generates N+1 queries here❗️ 😨😨
```
I imagine I'm missing some small detail here.

My main goal is to respond to a REST request with a JSON in the following format:
```
[
      Kits
            claimed_by_user : {...}
            cancelled_by_user : {...}
            order : {user: {...}, approved_by_user: {...}} 
]
```

Thanks in advance!