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

Django 1.11运行manage.py runserver报生成器表达式语法错误如何修复

报错原因

这个报错是Django版本和Python版本不兼容导致的:Django 1.11的官方支持Python版本上限为3.6,你当前使用的Python 3.9语法规则有调整,旧版Django的写法不符合高版本Python的语法要求,才会抛出生成器表达式需要加括号的语法错误。

修复方案

有两种可选修复方式,优先推荐第一种:

方案1:版本匹配(推荐,无后续兼容隐患)

  • 将本地Python版本降级到3.5或3.6,匹配Django 1.11的官方支持范围,不需要修改任何源码,也不会出现其他隐性兼容问题。

方案2:临时修改源码(仅适合暂时无法降级版本的场景)

  • 找到报错提示的路径下的django\contrib\admin\widgets.py文件,定位到第151行
  • 将原代码:
('%s=%s') % (k, v) for k, v in params.items(),

修改为给生成器表达式外层加上括号:

(('%s=%s') % (k, v) for k, v in params.items()),
  • 保存后重新执行manage.py runserver即可解决当前报错。

注意:该方案仅能修复当前报错,后续运行过程中仍有可能遇到其他Django 1.11与高版本Python不兼容的问题。

内容的提问来源于stack exchange,提问作者manuGupta

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 03:39:01