我有两个表,如下所示,它们已经被填充
class Shelter(Base):
__tablename__ = 'shelter'
id = Column(Integer, primary_key = True)
name = Column(String(80), nullable = False)
address = Column(String(250))
city = Column(String(80))
state = Column(String(20))
zipCode = Column(String(10))
website = Column(String)
class Puppy(Base):
__tablename__ = 'puppy'
id = Column(Integer, primary_key=True)
name = Column(String(250), nullable=False)
gender = Column(String(6), nullable = False)
dateOfBirth = Column(Date)
picture = Column(String)
shelter_id = Column(Integer, ForeignKey('shelter.id'))
shelter = relationship(Shelter)
weight = Column(Numeric(10))
现在,我想用Python编写一个查询,通过它们的庇护所名称获取所有小狗组。因此,需要将其打印为puppyName puppyShelterName
。在
我写的代码如下
^{pr2}$这显然不是我想要的。我想打印所有的小狗的名字和他们的庇护所的名称组,根据他们所住的庇护所。如何更正代码?在
从提供的附加信息来看,
ORDER BY
似乎就足够了。为了打印出小狗的名字和庇护所的名字,还需要加入模型:如果你的关系中有反证的话,你也可以做一些不同的事情:
^{pr2}$然后您可以首先选择所有的避难所,然后使用backref遍历小狗。根据backref配置的急切程度,它要么发出一个查询,要么对所有
Shelter
发出一个select,然后对每个避难所执行一个select,以获取Puppy
实例。在相关问题 更多 >
编程相关推荐