我已经按照给定的顺序运行命令安装了Django和Oscar:
virtualenv eshop_env
eshop_env/Scripts/Activate
pip install django-oscar
django-admin.py startproject eshop
cd eshop
manage.py migrateeshop目录中的settings.py文件在顶部有以下两行:
import os
from oscar.default import *os模块导入时没有任何错误。但是,在from下面有一条红色的波浪线。
我正在使用Visual Studio代码。当我将鼠标悬停在该行上时,提示无法导入oscar.default。同样的错误出现在我所有涉及django和oscar的import语句中。
在我运行迁移命令后,这也会导致命令行中出现以下错误:
ModuleNotFoundError: No module named 'oscar.default'我试着跑步
pip install oscar.default
pip install oscar但它们都显示了一个错误。
但是,我能够再次成功地运行pip install django-oscar命令。但是,关于模块的错误不会改变。
我做错了什么?
这是我的项目目录结构:
D:\Python Websites\Example\eshop\
D:\Python Websites\Example\eshop_env\
D:\Python Websites\Example\eshop\manage.py
D:\Python Websites\Example\eshop\eshop\settings.py, urls.py etc.导入错误也会发生在所有其他模块中:
from django.apps import apps
from django.urls import include, path # > Django-2.0
from django.contrib import admin
from oscar.app import applicationsVisual Studio Code为它们显示了一条红色的道路线,其中包含一个类似于Unable to Import ...开头的错误。
发布于 2019-10-02 15:05:16
我认为您已经在虚拟环境中安装了django-oscar,这不是问题所在。我认为您必须“告诉”VS代码使用名为eshop_env的特定virtualenv。有关如何告诉vscode使用哪个virtualenv的详细说明,请查看此链接:https://code.visualstudio.com/docs/python/environments。祝好运。
发布于 2019-11-13 05:11:12
要检查Python在何处查找文件,请将以下代码复制到settings.py中
import os
import environ
import oscar
# To check where is looking Python
env = environ.Env()
from os.path import dirname, abspath
ROOT = dirname(abspath(__file__)).replace('\\', '/') + '/'
print ("self.__name__: " + __name__)
print ("self.__file__: " + __file__)
print ("ROOT: " + ROOT)
import django
print (django.__path__)
print (oscar.__path__)
print (environ.__path__)
... 然后在控制台中输入'python manage.py runserver‘。我希望这能对你有所帮助。
https://stackoverflow.com/questions/58196447
复制相似问题