[英]peewee python multiple foreign keys on table
我有以下模型类:
class Ticket(BaseModel):
event = ForeignKeyField(Event)
category = ForeignKeyField(Category)
order_number = IntegerField()
tier_name = CharField()
num_available = IntegerField()
price = DecimalField()
如您所见,该表具有多个外键。 然后,我希望能够选择所有票证并对其进行遍历并访问类别和事件:
tickets = Ticket.select()
for ticket in tickets:
print ticket.category.id
print ticket.event.id
但是,我不希望在每次迭代中针对类别和事件启动新查询。 我知道,如果我只是参加活动,我可以做类似的事情:
tickets = Ticket.select(Ticket, Event).join(Event)
但是,每次我访问类别时,仍然会启动一个新查询。 这段代码给了我一个例外:
tickets = Ticket.select(Ticket, Category, Event).join(Event).join(Category)
我得到的错误是:ValueError:类'models.ticketing.Category'和类'models.event.Event'之间没有外键
对于最后一个错误:您正在尝试将Category
加入Event
,则需要切换回Ticket
:
tickets = Ticket.select(Ticket, Category, Event).join(Event).switch(Ticket).join(Category)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.