模板库
源码:src/backend/db/models/template.py、image_template.py
返回 总览
字段表格式:字段 | 中文名 | 类型 | 可空 | 作用
构图 / 场景 / 模特为虚拟影棚资源模板;主图 / 详情 / 复刻为图模板;template_images 为多态图库。
ER
erDiagram
product_sub_types ||--o{ sub_type_comp_templates : links
product_sub_types ||--o{ sub_type_scene_templates : links
product_sub_types ||--o{ sub_type_model_templates : links
comp_templates ||--o{ sub_type_comp_templates : used
scene_templates ||--o{ sub_type_scene_templates : used
model_templates ||--o{ sub_type_model_templates : used
model_templates ||--o{ model_template_poses : poses
main_image_templates ||--o{ template_images : via_poly
detail_image_templates ||--o{ template_images : via_poly
replica_image_templates ||--o{ template_images : via_poly
hot_styles ||--o{ template_images : via_poly
template_images.template_id 无数据库外键,由 template_type 区分指向哪张模板表。
comp_templates — 构图模板
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
构图模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
构图模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
列表/选型预览图 URL |
| reference_url |
参考图地址 |
String(500) |
YES |
构图参考原图 URL |
| category_tag |
分类标签 |
String(30) |
NO |
模板分组标签;默认 general |
| prompt_snippet |
Prompt 片段 |
Text |
YES |
拼入生图 Prompt 的构图描述 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
sub_type_comp_templates — 子类×构图
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
关联 ID |
UUID |
NO |
主键 |
| sub_type_id |
子类 ID |
UUID |
NO |
FK→product_sub_types.id CASCADE |
| comp_template_id |
构图模板 ID |
UUID |
NO |
FK→comp_templates.id CASCADE |
| sort_order |
排序 |
SmallInteger |
NO |
该子类下构图展示顺序;默认 0 |
| created_at |
创建时间 |
timestamptz |
NO |
关联行创建时间 |
scene_templates — 场景模板
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
场景模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
场景模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
列表/选型预览图 URL |
| reference_url |
参考图地址 |
String(500) |
YES |
场景参考原图 URL |
| space_type |
空间类型 |
String(50) |
YES |
如室内/户外等空间分类 |
| style |
场景风格 |
String(50) |
YES |
场景视觉风格标签 |
| category_tag |
分类标签 |
String(30) |
NO |
模板分组标签;默认 general |
| is_system |
是否系统公共场景 |
Boolean |
NO |
true 时全品类可用,无需子类关联;默认 false |
| prompt_snippet |
Prompt 片段 |
Text |
YES |
拼入生图 Prompt 的场景描述 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
sub_type_scene_templates — 子类×场景
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
关联 ID |
UUID |
NO |
主键 |
| sub_type_id |
子类 ID |
UUID |
NO |
FK→product_sub_types.id CASCADE |
| scene_template_id |
场景模板 ID |
UUID |
NO |
FK→scene_templates.id CASCADE |
| sort_order |
排序 |
SmallInteger |
NO |
该子类下场景展示顺序;默认 0 |
| created_at |
创建时间 |
timestamptz |
NO |
关联行创建时间 |
model_templates — 模特模板
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
模特模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
模特模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
列表/选型预览图 URL |
| reference_url |
参考图地址 |
String(500) |
YES |
模特参考原图 URL |
| gender |
性别 |
String(20) |
YES |
模特性别标签 |
| age_group |
年龄段 |
String(30) |
YES |
模特年龄分组标签 |
| ethnicity |
种族/肤色 |
String(50) |
YES |
模特族裔或肤色标签 |
| prompt_snippet |
Prompt 片段 |
Text |
YES |
拼入生图 Prompt 的模特描述 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
model_template_poses — 姿势
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
姿势 ID |
UUID |
NO |
主键 |
| model_template_id |
模特模板 ID |
UUID |
NO |
FK→model_templates.id CASCADE |
| name |
名称 |
String(100) |
NO |
姿势展示名称 |
| image_url |
姿势图地址 |
String(500) |
YES |
姿势预览图 URL |
| reference_url |
参考图地址 |
String(500) |
YES |
姿势参考原图 URL |
| prompt_snippet |
Prompt 片段 |
Text |
YES |
拼入生图 Prompt 的姿势描述 |
| sort_order |
排序 |
SmallInteger |
NO |
同一模特下姿势展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
sub_type_model_templates — 子类×模特
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
关联 ID |
UUID |
NO |
主键 |
| sub_type_id |
子类 ID |
UUID |
NO |
FK→product_sub_types.id CASCADE |
| model_template_id |
模特模板 ID |
UUID |
NO |
FK→model_templates.id CASCADE |
| sort_order |
排序 |
SmallInteger |
NO |
该子类下模特展示顺序;默认 0 |
| created_at |
创建时间 |
timestamptz |
NO |
关联行创建时间 |
main_image_templates — 主图模板
按「大类 × 风格」匹配(现用键);仍保留子类/面料遗留匹配键。
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
主图模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
主图模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
模板预览图 URL |
| layout_config_json |
布局配置 |
JSONB |
YES |
主图排版/槽位等布局 JSON |
| product_sub_type_ids |
适用子类 ID 列表 |
JSONB |
YES |
遗留匹配键:产品子类 UUID 列表 |
| fabric_material_ids |
适用材质 ID 列表 |
JSONB |
YES |
遗留匹配键:面料材质 UUID 列表 |
| product_category_ids |
适用大类 ID 列表 |
JSONB |
YES |
现用匹配键:产品大类 UUID 列表 |
| style_ids |
适用风格 ID 列表 |
JSONB |
YES |
现用匹配键:product_styles UUID 列表 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
detail_image_templates — 详情图模板
字段与 main_image_templates 同构(含遗留与现用匹配键)。
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
详情图模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
详情图模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
模板预览图 URL |
| layout_config_json |
布局配置 |
JSONB |
YES |
详情图排版/槽位等布局 JSON |
| product_sub_type_ids |
适用子类 ID 列表 |
JSONB |
YES |
遗留匹配键:产品子类 UUID 列表 |
| fabric_material_ids |
适用材质 ID 列表 |
JSONB |
YES |
遗留匹配键:面料材质 UUID 列表 |
| product_category_ids |
适用大类 ID 列表 |
JSONB |
YES |
现用匹配键:产品大类 UUID 列表 |
| style_ids |
适用风格 ID 列表 |
JSONB |
YES |
现用匹配键:product_styles UUID 列表 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
replica_image_templates — 复刻模板
按「子类 × 面料」匹配(无 product_category_ids / style_ids)。
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
复刻模板 ID |
UUID |
NO |
主键 |
| name |
名称 |
String(100) |
NO |
复刻模板展示名称 |
| description |
描述 |
Text |
YES |
业务说明文案 |
| thumbnail_url |
缩略图地址 |
String(500) |
YES |
模板预览图 URL |
| layout_config_json |
布局配置 |
JSONB |
YES |
复刻图排版/槽位等布局 JSON |
| product_sub_type_ids |
适用子类 ID 列表 |
JSONB |
YES |
匹配键:产品子类 UUID 列表 |
| fabric_material_ids |
适用材质 ID 列表 |
JSONB |
YES |
匹配键:面料材质 UUID 列表 |
| sort_order |
排序 |
SmallInteger |
NO |
列表展示顺序;默认 0 |
| is_active |
是否启用 |
Boolean |
NO |
false 时不可选;默认 true |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |
| deleted_at |
删除时间 |
timestamptz |
YES |
软删标记;非空表示已删除 |
template_images — 多态图库
主图 / 详情 / 复刻 / 爆款模板共用的图片条目;template_id 无数据库外键。
| 字段 |
中文名 |
类型 |
可空 |
作用 |
| id |
图库条目 ID |
UUID |
NO |
主键 |
| template_type |
模板类型 |
Enum template_image_type |
NO |
main / detail / replica / hot_style,决定 template_id 指向哪张表 |
| template_id |
模板 ID |
UUID |
NO |
指向对应模板表主键;有索引;无 FK |
| url |
图片地址 |
String(500) |
NO |
模板图正式 URL |
| reference_url |
参考图地址 |
String(500) |
YES |
参考原图 URL |
| prompt_snippet |
Prompt 片段 |
Text |
YES |
该镜头/图位的 Prompt 补充描述 |
| shot_label |
镜头标签 |
String(50) |
YES |
镜头或图位名称(如正面、细节) |
| sort_order |
排序 |
SmallInteger |
NO |
同一模板下图片顺序;默认 0 |
| created_at |
创建时间 |
timestamptz |
NO |
行创建时间 |
| updated_at |
更新时间 |
timestamptz |
NO |
行最后修改时间 |