已安装djangorestframework但Import 'rest_framework'无法解析求助
解决Django Rest Framework导入无法解析的问题
我来帮你排查这个导入问题,这种情况我遇到过好几次,大概率是环境或者IDE配置的问题,一步步来:
检查虚拟环境是否正确激活
很多时候我们会不小心把包装到全局Python环境里,而项目用的是独立虚拟环境。先确认你的项目虚拟环境已经激活,然后在终端里运行:pip show djangorestframework如果输出里的
Location路径和你虚拟环境的site-packages目录一致,那安装路径是对的;如果不一致,说明你激活错了环境,重新激活虚拟环境后再装一次:pip install djangorestframework配置IDE的Python解释器
像VS Code、PyCharm这类IDE经常会默认用全局Python解释器,导致找不到虚拟环境里的包:- VS Code:按
Ctrl+Shift+P(Windows/Linux)或Cmd+Shift+P(Mac),输入"Python: Select Interpreter",选择你项目虚拟环境里的Python解释器(一般在项目根目录的venv/bin/python或者venv/Scripts/python)。 - PyCharm:打开
File > Settings > Project: [你的项目名] > Python Interpreter,右上角点击齿轮选择Add,找到虚拟环境的Python路径添加进去。
- VS Code:按
验证INSTALLED_APPS配置
你的配置拼写是对的(注意rest_framework是下划线不是连字符),不过可以试着把它移到django.contrib相关app的后面(符合常规配置习惯,虽然不影响功能):INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', 'api.apps.ApiConfig' ]清理IDE缓存并重启
有时候IDE缓存会导致识别延迟,VS Code可以按Ctrl+Shift+P输入"Developer: Reload Window";PyCharm可以点击File > Invalidate Caches... > Invalidate and Restart,重启后再看看导入问题是否消失。
内容的提问来源于stack exchange,提问作者Harshil Gambhir
相关产品推荐
相关产品推荐

