You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VSCode中Django模板格式化问题及最佳扩展与配置咨询

VSCode中Django模板格式化问题及最佳扩展与配置咨询

我太懂你这种糟心的感觉了!Prettier对Django模板的支持确实拉胯,经常把模板标签、过滤器的格式搞乱——要么缩进错得离谱,要么把{% if %}这类标签拆成奇怪的换行,完全没法看。我之前踩过不少坑,后来摸索出一套比较顺手的配置,分享给你:

一、首选的格式化工具:djLint

这是专门为Django、Jinja2这类模板打造的格式化+代码检查工具,对模板语法的识别精准度甩Prettier几条街,完全不会乱改你的模板标签结构。

二、必装的VSCode扩展

  • djLint:直接在扩展市场搜这个,安装后就能关联Django模板进行格式化,还能实时检查语法问题。
  • Django(微软官方):基础功能拉满,提供模板语法高亮、变量/标签智能提示、模板文件跳转,写Django项目必备。
  • Django Template Language:增强模板的语法高亮和补全,比VSCode默认的HTML模式更贴合Django模板的特点。

三、关键配置步骤

  1. 先在VSCode的settings.json里把Django模板文件关联到django-html语言模式,这样扩展才能识别:
"files.associations": {
  "*.html": "django-html"
}
  1. 设置djLint为Django模板的默认格式化器,还能自定义规则(比如缩进大小、空行保留数量):
{
  "[django-html]": {
    "editor.defaultFormatter": "monosans.djlint"
  },
  "djlint.format.enable": true,
  "djlint.lint.enable": true,
  "djlint.options": [
    "--indent", "2",  // 自定义缩进为2空格
    "--preserve-blank-lines", "2"  // 保留2个连续空行
  ]
}

四、如果非要用Prettier的替代方案

如果你习惯了Prettier的风格,可以试试prettier-plugin-django-template插件,不过这个插件的维护活跃度不如djLint。配置方法如下:

  • 先通过npm安装插件:npm install prettier-plugin-django-template --save-dev
  • 在项目根目录创建.prettierrc文件,添加配置:
{
  "plugins": ["prettier-plugin-django-template"],
  "overrides": [
    {
      "files": ["*.html"],
      "options": {
        "parser": "django-template"
      }
    }
  ]
}

总的来说,我个人更推荐djLint+官方Django扩展的组合,格式化效果稳定,对Django模板的适配性最好。

备注:内容来源于stack exchange,提问作者MrAalu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 11:14:34