VSCode中Django模板格式化问题及最佳扩展与配置咨询
VSCode中Django模板格式化问题及最佳扩展与配置咨询
我太懂你这种糟心的感觉了!Prettier对Django模板的支持确实拉胯,经常把模板标签、过滤器的格式搞乱——要么缩进错得离谱,要么把{% if %}这类标签拆成奇怪的换行,完全没法看。我之前踩过不少坑,后来摸索出一套比较顺手的配置,分享给你:
一、首选的格式化工具:djLint
这是专门为Django、Jinja2这类模板打造的格式化+代码检查工具,对模板语法的识别精准度甩Prettier几条街,完全不会乱改你的模板标签结构。
二、必装的VSCode扩展
- djLint:直接在扩展市场搜这个,安装后就能关联Django模板进行格式化,还能实时检查语法问题。
- Django(微软官方):基础功能拉满,提供模板语法高亮、变量/标签智能提示、模板文件跳转,写Django项目必备。
- Django Template Language:增强模板的语法高亮和补全,比VSCode默认的HTML模式更贴合Django模板的特点。
三、关键配置步骤
- 先在VSCode的
settings.json里把Django模板文件关联到django-html语言模式,这样扩展才能识别:
"files.associations": { "*.html": "django-html" }
- 设置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
相关产品推荐
相关产品推荐

