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

在Django 1.11.13上安装Django Channels 2.1.1遇依赖错误求助

解决Django Channels 2.1.1安装时的async-timeout依赖错误

这个问题本质是Python版本、Channels版本和依赖包之间的兼容性冲突,我来给你拆解原因和解决办法:

问题根源

从你的报错日志能看出来:

  • 你要安装的Channels 2.1.1 要求依赖 asgiref~=2.3
  • 而 asgiref 2.3.x(比如你下载的2.3.1)强制要求 async-timeout~=3.0
  • 但 async-timeout 3.0+ 只支持 Python 3.6 及以上版本,而你的环境用的是 Python 3.5(从路径 ./djangoenv/lib/python3.5/site-packages 能看出来),所以PyPI上找不到符合要求的包版本,就报错了。

解决方案

方案1:升级Python版本(推荐长期方案)

如果你的项目允许升级Python,把Python升到3.6或更高版本,之后直接执行安装命令就行:

pip install channels==2.1.1

升级后就能正常安装async-timeout~=3.0,整个依赖链就通了。

方案2:降级Channels到兼容Python3.5的版本

如果暂时没法升级Python,可以安装Channels 2.0.x版本,它的依赖要求更低:

pip install channels==2.0.4

这个版本依赖的asgiref~=2.2只需要async-timeout~=2.0,而async-timeout 2.x是支持Python3.5的,完全适配你的Django1.11.13环境。

安装完成后,你可以用下面的命令确认版本是否正确:

pip show channels
pip show asgiref

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:48:49