Build lightweight AI agent admin
This commit is contained in:
@@ -0,0 +1,36 @@
|
||||
#!/usr/bin/env python
|
||||
# -*- coding: utf-8 -*-
|
||||
"""
|
||||
文件管理模型
|
||||
"""
|
||||
from sqlalchemy import Column, String, Text, Boolean, BigInteger, Integer, ForeignKey, Index
|
||||
|
||||
from app.base_model import BaseModel
|
||||
|
||||
|
||||
class FileManager(BaseModel):
|
||||
"""文件管理模型"""
|
||||
__tablename__ = "core_file_manager"
|
||||
|
||||
name = Column(String(255), nullable=False, comment="文件/文件夹名称")
|
||||
type = Column(String(10), default='file', comment="类型: file/folder")
|
||||
parent_id = Column(String(36), nullable=True, comment="父文件夹ID")
|
||||
path = Column(Text, nullable=False, default='', comment="文件路径")
|
||||
size = Column(BigInteger, default=0, comment="文件大小(字节)")
|
||||
file_ext = Column(String(50), nullable=True, comment="文件扩展名")
|
||||
mime_type = Column(String(200), nullable=True, comment="MIME类型")
|
||||
storage_type = Column(String(20), default='local', comment="存储类型: local/oss/minio/azure")
|
||||
storage_path = Column(Text, nullable=False, default='', comment="存储路径")
|
||||
url = Column(Text, nullable=True, comment="访问URL")
|
||||
thumbnail_url = Column(Text, nullable=True, comment="缩略图URL")
|
||||
md5 = Column(String(32), nullable=True, comment="文件MD5")
|
||||
is_public = Column(Boolean, default=False, comment="是否公开")
|
||||
download_count = Column(Integer, default=0, comment="下载次数")
|
||||
is_system = Column(Boolean, default=False, comment="是否系统文件夹(不可删除/重命名)")
|
||||
source = Column(String(50), nullable=True, comment="来源模块标识")
|
||||
|
||||
__table_args__ = (
|
||||
Index('ix_file_manager_parent_type', 'parent_id', 'type'),
|
||||
Index('ix_file_manager_storage_type', 'storage_type'),
|
||||
Index('ix_file_manager_md5', 'md5'),
|
||||
)
|
||||
Reference in New Issue
Block a user