feat:为表达添加创建时间

This commit is contained in:
SengokuCola
2025-07-24 00:36:53 +08:00
parent 936091fe7f
commit b4a92ee5d5
5 changed files with 86 additions and 13 deletions

View File

@@ -2,6 +2,7 @@ from peewee import Model, DoubleField, IntegerField, BooleanField, TextField, Fl
from .database import db
import datetime
from src.common.logger import get_logger
import time
logger = get_logger("database_model")
# 请在此处定义您的数据库实例。
@@ -306,6 +307,7 @@ class Expression(BaseModel):
last_active_time = FloatField()
chat_id = TextField(index=True)
type = TextField()
create_date = FloatField(null=True) # 创建日期,允许为空以兼容老数据
class Meta:
table_name = "expression"
@@ -449,9 +451,12 @@ def initialize_database():
alter_sql = f"ALTER TABLE {table_name} ADD COLUMN {field_name} {sql_type}"
alter_sql += " NULL" if field_obj.null else " NOT NULL"
if hasattr(field_obj, "default") and field_obj.default is not None:
# 正确处理不同类型的默认值
# 正确处理不同类型的默认值跳过lambda函数
default_value = field_obj.default
if isinstance(default_value, str):
if callable(default_value):
# 跳过lambda函数或其他可调用对象这些无法在SQL中表示
pass
elif isinstance(default_value, str):
alter_sql += f" DEFAULT '{default_value}'"
elif isinstance(default_value, bool):
alter_sql += f" DEFAULT {int(default_value)}"