ORM关系之一对一
在sqlalchemy
中,如果想要将两个模型映射成一对一的关系,那么应该在父
模型中,指定引用的时候,要传递一个uselist=False
这个参数进去。就是告诉父
模型,以后引用这个从模型的时候,不再是一个列表了,而是一个对象
了。
需要导入backref
from sqlalchemy.orm import backref
class User(Base):
__tablename__ = 'user'
id = Column(Integer,primary_key=True,autoincrement=True)
uname = Column(String(50),nullable=False)
class UserExtend(Base):
__tablename__ = 'user_extend'
id = Column(Integer, primary_key=True, autoincrement=True)
school = Column(String(50))
uid = Column(Integer,ForeignKey("user.id"))
user = relationship("User",backref=backref("extend",uselist=False))