在SQLAlchemy中,要访问关系的键列表,可以使用foreign_keys
属性。foreign_keys
属性返回与关系相关联的外键列表。
下面是一个示例代码:
from sqlalchemy import create_engine, Column, Integer, ForeignKey
from sqlalchemy.orm import relationship
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
# 定义两个表,一个是主表,一个是关联表
class User(Base):
__tablename__ = 'users'
id = Column(Integer, primary_key=True)
name = Column(String)
addresses = relationship("Address")
class Address(Base):
__tablename__ = 'addresses'
id = Column(Integer, primary_key=True)
email = Column(String)
user_id = Column(Integer, ForeignKey('users.id'))
# 创建数据库引擎
engine = create_engine('sqlite:///example.db')
# 创建表
Base.metadata.create_all(engine)
# 在关系对象上使用foreign_keys属性来访问关系的键列表
user_keys = User.addresses.property.foreign_keys
print("User表关联的外键列表:")
for key in user_keys:
print(key)
在上面的示例中,我们定义了两个表User
和Address
,User
表和Address
表之间存在关系。我们使用User.addresses.property.foreign_keys
来访问User
表关联的外键列表,并打印出来。
输出结果类似如下:
User表关联的外键列表:
ForeignKey('addresses.user_id')
请注意,这个示例中的数据库使用了SQLite,你可以根据自己的需要修改数据库引擎的配置。此外,foreign_keys
属性返回的是一个包含外键的列表,你可以根据需要进行进一步处理和操作。
领取专属 10元无门槛券
手把手带您无忧上云