Agent Skills
返回列表
Django Admin CMS 生成器

Django Admin CMS 生成器

开发编程 更新于 2026.08.29

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_eff99d18/django-admin-cms,让你的 AI 助手能交互式生成 Django Admin 内容管理系统代码。

技能介绍

要解决的问题

Django 自带 Admin 是很好的起点,但每接手一个新业务都要从头重写一遍:模型刚定下来,admin.py 还是空的;列表页缺过滤、批量操作要手写;等到要区分管理员和普通用户后台时,才发现 get_queryset、save_model、AdminSite 的坑都得重新踩。

更麻烦的是代码风格不统一。A 项目用单文件 admin.py 堆到两千行,B 项目把每个模型拆成独立模块,C 项目干脆没有 list_select_related,列表页一打开就是 N+1。

这个技能做什么

django-admin-cms 把“从一句话需求到一套可运行后台”的路径固化下来,基于 Django 5.2 LTS,交互式收集信息后自动生成完整项目。

核心能力

  • 自然语言推导模型:从业务描述里识别名词(候选模型)、动词(关系)、属性(字段)、状态(choices),输出 ASCII 关系草图
  • 三档特性选择:精简版(基础 CRUD)、标准版(+SimpleListFilter/Action/Inline/ModelForm 校验)、完整版(+双 AdminSite/权限隔离/导入导出/单元测试)
  • 模块化 Admin:标准版起采用 app/admin/ 包,每模型独立文件,__init__.py 集中导入
  • 性能约束内建:list_display 含跨表字段时强制配 list_select_related,聚合统计走 annotate
  • 安全边界明确:SECRET_KEY 用 django-insecure- 占位并注明生产替换,DEBUG=True 仅限开发演示

关键步骤

  1. 一次性询问缺失的 5 项信息:项目名、业务场景、主应用名、特性档位、是否双后台
  2. 推导实体关系,输出模型设计方案(字段清单、关系汇总表、Meta 配置)并等待确认
  3. 按确认档位生成代码,顺序保证依赖正确:骨架 → 模型 → admin/ → 附加模块 → 模板静态 → README
  4. 对照检查清单验证:__str__/verbose_name_plural/ordering 齐全、外键 autocomplete_fields 有对应 search_fields、完整版测试覆盖数据隔离/save_model/Action

适用边界

  • 只写文件,不跑命令。技能不执行 pip install、migrate、createsuperuser、runserver,启动步骤写进 README 由你手动执行
  • 不会猜测业务实体。信息不全就继续问,确认模型设计后才动代码
  • 锁定 Django 5.2。用到了 5.1+ 的 LoginRequiredMiddleware 和 @admin.action,往下兼容需要自己改
  • 完整版才涉及权限隔离。需要数据隔离时模型必须带 created_by = ForeignKey(User, null=True, blank=True),且依赖 django-import-export==4.4.1
  • 通用化设计。蓝本是教务成绩系统,但领域概念已抽象为通用模式,图书、设备、订单、工单都适用

生成的代码是可运行的起点,不是终点。复杂业务逻辑、权限规则的细节,还是要你自己往里填。

使用场景

  • 接到新业务需求,需要从业务描述推导数据模型并生成Django Admin后台骨架
  • 现有后台列表页缺过滤和批量操作,需要补充SimpleListFilter和Admin Action
  • 需要为管理员和普通用户分别搭建后台站点,实现数据隔离与权限控制
  • 团队Django项目需要统一的Admin代码结构,希望把每个模型的admin拆成独立模块

适合人员

  • 接手新业务需要快速搭建后台的Django开发工程师
  • 负责老后台改造、需要补齐列表过滤和批量操作的后端开发者
  • 正在做多角色分权系统、需要设计双AdminSite与权限隔离的技术人员
  • 希望规范团队Admin代码组织、从单文件拆分为模块化结构的项目负责人