25 lines
1.2 KiB
Python
25 lines
1.2 KiB
Python
from datetime import datetime
|
|
from sqlalchemy import Column, Integer, String, Text, DateTime, ForeignKey, UniqueConstraint
|
|
from ..database import Base
|
|
|
|
|
|
class BlockConfig(Base):
|
|
__tablename__ = "block_config"
|
|
__table_args__ = (
|
|
UniqueConstraint("template_id", "block_id", name="uq_template_block"),
|
|
)
|
|
|
|
id = Column(Integer, primary_key=True, autoincrement=True)
|
|
template_id = Column(Integer, ForeignKey("template.id", ondelete="CASCADE"), nullable=False)
|
|
block_id = Column(String(50), nullable=False)
|
|
region_name = Column(String(200), nullable=True, comment="区域名称")
|
|
region_type = Column(String(30), default="ai_generate", comment="ai_generate/manual/fixed/table")
|
|
data_sources = Column(Text, nullable=True, comment="数据来源 JSON 数组")
|
|
prompt = Column(Text, nullable=True, comment="提示词")
|
|
output_format = Column(String(30), default="formal_paragraph", comment="输出格式")
|
|
need_review = Column(Integer, default=1, comment="1=需要审核")
|
|
remark = Column(Text, nullable=True, comment="备注")
|
|
enabled = Column(Integer, default=1, comment="1=启用")
|
|
created_at = Column(DateTime, default=datetime.now)
|
|
updated_at = Column(DateTime, default=datetime.now, onupdate=datetime.now)
|