Files
ToDoList/api/app/models/user_settings.py
祀梦 2979197b1c release: Elysia ToDo v1.0.0
鍏ㄦ爤涓汉淇℃伅绠$悊搴旂敤锛岄泦鎴愬緟鍔炰换鍔°€佷範鎯墦鍗°€佺邯蹇垫棩鎻愰啋銆佽祫浜ф€昏鍔熻兘銆

Made-with: Cursor
2026-03-14 22:21:26 +08:00

37 lines
1.2 KiB
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

from sqlalchemy import Column, Integer, String, Text, DateTime, Date
from datetime import datetime, timezone, date
from app.database import Base
def utcnow():
"""统一获取 UTC 时间的工厂函数"""
return datetime.now(timezone.utc)
class UserSettings(Base):
"""用户设置模型(单例,始终只有一条记录 id=1"""
__tablename__ = "user_settings"
id = Column(Integer, primary_key=True, default=1)
# 个人信息
nickname = Column(String(50), default="爱莉希雅")
avatar = Column(Text, nullable=True)
signature = Column(String(200), nullable=True)
birthday = Column(Date, nullable=True)
email = Column(String(100), nullable=True)
# 应用信息
site_name = Column(String(50), default="爱莉希雅待办")
# 应用偏好
theme = Column(String(20), default="pink")
language = Column(String(10), default="zh-CN")
default_view = Column(String(20), default="list")
default_sort_by = Column(String(20), default="created_at")
default_sort_order = Column(String(10), default="desc")
# 时间戳
created_at = Column(DateTime, default=utcnow)
updated_at = Column(DateTime, default=utcnow, onupdate=utcnow)