user1619524
user1619524

Reputation: 1624

Django: select data from 2 models

Good day!

I have 2 models and I am trying to get sql equivalent of : select * from both models where order=xx. Appreciate little assistance :)

class Orders(models.Model):
    order_id = models.AutoField(primary_key=True)
    created = models.DateTimeField(auto_now_add=True)

class ResourcePool(models.Model):
    email = models.EmailField()
    item_a = models.CharField()
    item_b = models.CharField()
    item_c = models.CharField()
    order_id = models.ForeignKey(Orders)

Tried the following, but it does not inlude fields from 'Orders' model

ResourcePool.objects.filter(order_id__pk=26).values()
ResourcePool.objects.filter(order_id__pk=26).select_related().values()

Upvotes: 0

Views: 1038

Answers (2)

Exprator
Exprator

Reputation: 27503

ResourcePool.objects.filter(order_id__pk=26).values('orders__created','email','item_a',item_b','item_c')

try this

Upvotes: 1

Carlos Manuel
Carlos Manuel

Reputation: 1

try this

order = Orders.objects.get(pk=26)
resource=ResourcePool.objects.filter(order_id=order.id).select_related()

And to obtain the data of "Orders"

id_order_pk26 = resource.order_id.order_id
created_pk26 = resource.order_id.created

Upvotes: 0

Related Questions