假设我有以下Django模型:
class Client(models.Model):
name = models.CharField(max_length=250)
class Staff(models.Model):
name = models.CharField(max_length=250)
class Agent(models.Model):
staff = models.ForeignKey(Staff, on_delete=models.CASCADE)
class Writer(models.Model):
staff = models.ForeignKey(Staff, on_delete=models.CASCADE)
class Order(models.Model):
client = models.ForeignKey(Client, on_delete=models.CASCADE)
agent = models.ForeignKey(Agent, on_delete=models.CASCADE)
writer = models.ForeignKey(Writer, on_delete=models.CASCADE)
模型之间的关系具有以下条件:
鉴于这些模型和参数,我如何获得过去曾与特定客户合作过的所有代理商或所有作家的清单?
我不知何故需要从[客户]>查询[所有订单]> [每个订单代理]使用Python / Django。
答案 0 :(得分:0)
以下是为所有代理执行此操作的可能方法:
orders = Order.objects.filter(client=client)
agents = []
for order in orders:
agents.append(order.agent)