解决问题:sqlalchemy.exc.ArgumentError: Mapper mapped class Xxx->xxx could not assemble any primary key columns for mapped table ‘xxx’
# 创建及操作时间的基类
class BaseTime():
__abstract__ = True
created_at = Column(
DateTime(timezone=True),
default=func.now(),
)
updated_at = Column(DateTime(timezone=True),
server_default=func.now(),
onupdate=func.now())
# 会员数据模型
class User(Base,BaseTime):
__tablename__ = "lm_user"
id = Column(Integer, primary_key=True) # 编号
username = Column(String(100)) # 用户名
password = Column(String(100)) # 密码
email = Column(String(100), unique=True) # 邮箱
phone = Column(String(11), unique=True) # 手机号
consumption = Column(DECIMAL(10, 2), default=0) # 消费额
addtime = Column(DateTime, index=True, default=datetime.now) # 注册时间
orders = relationship('Orders', backref='user') # 订单外键关系关联
就是因为我们创建了一个BaseTime基类,但是又想让User类继承它且不想把它创建成数据表。
那就加上一句:abstract = True
这样就好啦!!!