37 lines
1.1 KiB
Python
37 lines
1.1 KiB
Python
![]() |
from datetime import datetime
|
||
|
from .. import db
|
||
|
|
||
|
|
||
|
class Session(db.Model):
|
||
|
__tablename__ = 'Sessions'
|
||
|
|
||
|
id = db.Column(db.Integer, primary_key=True)
|
||
|
name = db.Column(db.String(80), nullable=False)
|
||
|
# # 外键字段(使用驼峰命名)
|
||
|
userId = db.Column(db.Integer, db.ForeignKey(
|
||
|
'Users.id'), nullable=False)
|
||
|
|
||
|
# 通用字段
|
||
|
createdAt = db.Column(db.DateTime, default=datetime.now) # 创建时间
|
||
|
updatedAt = db.Column(db.DateTime, default=datetime.now,
|
||
|
onupdate=datetime.now) # 更新时间
|
||
|
deleteAt = db.Column(db.DateTime, default=None) # 软删除标记
|
||
|
|
||
|
# 定义与 User 表的关系 SQLAlchemy(ORM) 会自动处理外键关系
|
||
|
user = db.relationship('User', backref='sessions')
|
||
|
|
||
|
def to_dict(self):
|
||
|
return {
|
||
|
'id': self.id,
|
||
|
'name': self.name,
|
||
|
# 'user': {
|
||
|
# "id": self.user.id,
|
||
|
# "name": self.user.name,
|
||
|
# "email": self.user.email,
|
||
|
# "role": self.user.role,
|
||
|
# }
|
||
|
}
|
||
|
|
||
|
def __repr__(self):
|
||
|
return f'<Session {self.name}>'
|