Django应用导入rest_framework失败,执行命令提示找不到模块求助
解决Django无法导入rest_framework的问题
看起来你遇到的核心问题是安装的djangorestframework不在Django当前使用的Python环境中。从报错信息里能看到,你的Django运行在Enthought Canopy的Python2.7环境下(路径/home/tam/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/),但你用sudo pip install安装的包大概率跑到了系统默认的Python环境里,导致两个环境不匹配,所以Django找不到模块。
试试下面的解决步骤:
用Canopy环境自带的pip安装框架
直接指定Canopy环境的pip路径来安装,确保包装到正确的位置:/home/tam/Enthought/Canopy_64bit/User/bin/pip install djangorestframework不确定pip路径?先确认Python环境
如果不知道Canopy的pip具体在哪,先查当前运行Django的Python路径,再用对应路径下的pip安装:# 查看当前Django使用的Python路径 which python # 假设输出是 /home/tam/Enthought/Canopy_64bit/User/bin/python # 用这个路径下的pip安装 /home/tam/Enthought/Canopy_64bit/User/bin/pip install djangorestframework注意:避免用sudo pip安装
sudo pip会修改系统级的Python环境,而你使用的Canopy是独立的Python环境,直接用环境内的pip安装更安全,也不会出现环境不匹配的问题。
安装完成后,再尝试运行python manage.py makemigrations、创建超级用户或者runserver,应该就能正常识别rest_framework了。另外检查了你的settings.py配置,INSTALLED_APPS和REST_FRAMEWORK的设置都是正确的,不用调整~
内容的提问来源于stack exchange,提问作者Taimoor Mirza
相关产品推荐
相关产品推荐

