Je viens de commencer à apprendre Python (2.7) et je suis confronté à un problème. J'utilise Windows 10.TypeError: les importations relatives nécessitent l'argument du paquet en python
J'ai créé un environnement virtuel (c: \ virtualenvs \ testenv) et l'ai activé. Le chemin d'accès au dossier de l'application est c: \ pyprojects \ pytest. Ce dossier a requirements.txt avec tous les paquets listés.
L'invite ressemble
(testenv) c:\pyprojects\pytest\pip install -r requirements.txt
Il installe tous les paquets nécessaires avec succès sous testenv. Puis j'ai couru la commande suivante
(testenv) c:\pyprojects\pytest\python manage.py runserver
et a obtenu les éléments suivants error--
Unhandled exception in thread started by <function wrapper at 0x03ABF8F0>
Traceback (most recent call last):
File "C:\virtualenvs\testenv\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "C:\virtualenvs\testenv\lib\site-packages\django\core\management\commands\runserver.py", line 113, in inner_run
autoreload.raise_last_exception()
File "C:\virtualenvs\testenv\lib\site-packages\django\utils\autoreload.py", line 249, in raise_last_exception
six.reraise(*_exception)
File "C:\virtualenvs\testenv\lib\site-packages\django\utils\autoreload.py", line 226, in wrapper
fn(*args, **kwargs)
File "C:\virtualenvs\testenv\lib\site-packages\django\__init__.py", line 27, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\virtualenvs\testenv\lib\site-packages\django\apps\registry.py", line 85, in populate
app_config = AppConfig.create(entry)
File "C:\virtualenvs\testenv\lib\site-packages\django\apps\config.py", line 90, in create
module = import_module(entry)
File "c:\python27\Lib\importlib\__init__.py", line 30, in import_module
raise TypeError("relative imports require the 'package' argument")
TypeError: relative imports require the 'package' argument
Maintenant j'ai vérifié le fichier - C:. \ Python27 \ Lib \ __ importlib__init py et il dit
if name.startswith('.'):
if not package:
raise TypeError("relative imports require the 'package' argument")
level = 0
for character in name:
if character != '.':
break
level += 1
name = _resolve_name(name[level:], package, level)
__import__(name)
return sys.modules[name]
Il n'y a aucun fichier dans mon dossier d'application spécialement settings.py qui commence par dot. Est-ce que mon dossier APP n'est pas inclus dans le chemin python principal? ou il me manque quelque chose.
Toute aide est fortement appréciée.
Veuillez indiquer votre paramètre 'INSTALLED_APPS'. – knbk