You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
iTi-Flask/iti/applications/models/sys_config.py

39 lines
1.3 KiB
Python

from iti.applications.extensions import db
from iti.applications.common.crud import BaseModelMixin
from iti.applications.common.enums import StatusEnum
from iti.applications.common.utils import BaseSchema
from apiflask.fields import String, DateTime, Enum, Integer
class SysConfig(BaseModelMixin):
"""
系统配置表
"""
__tablename__ = "sys_config"
type = db.Column(db.String(64), nullable=False, comment="配置类型")
name = db.Column(db.String(255), nullable=False, comment="配置名称")
code = db.Column(db.String(128), nullable=False, comment="配置编码")
value = db.Column(db.Text, nullable=True, comment="配置值")
desc = db.Column(db.Text, nullable=True, comment="配置描述")
sort = db.Column(db.Integer, nullable=False, default=0, comment="排序")
status = db.Column(
db.Enum(StatusEnum, values_callable=lambda x: [e.value for e in x]),
nullable=False,
default=StatusEnum.ENABLED.value,
comment="状态",
)
class SysConfigSchema(BaseSchema):
id = String()
type = String()
name = String()
code = String()
value = String()
desc = String()
sort = Integer()
status = Enum(StatusEnum, by_value=True)
created_at = DateTime(format="%Y-%m-%d %H:%M:%S")
updated_at = DateTime(format="%Y-%m-%d %H:%M:%S")