Python + Django ImportError: non può importare i segnali di nomi da Python2.5 a Python2.7
-
28-09-2019 - |
Domanda
ho django-registrazione installato. Ho appena aggiornato la mia installazione Python 2,5-2,7.
Tutto funziona bene, ma quando provo a eseguire il mio Django app, ottengo l'errore sotto.
C:\django\pley>python manage.py runserver
Validating models...
Unhandled exception in thread started by <function inner_run at 0x02FA6830>
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\django\core\management\commands\runserver.
py", line 48, in inner_run
self.validate(display_num_errors=True)
File "C:\Python27\lib\site-packages\django\core\management\base.py", line 249,
in validate
num_errors = get_validation_errors(s, app)
File "C:\Python27\lib\site-packages\django\core\management\validation.py", lin
e 28, in get_validation_errors
for (app_name, error) in get_app_errors().items():
File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 146, in
get_app_errors
self._populate()
File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 64, in
_populate
self.load_app(app_name)
File "C:\Python27\lib\site-packages\django\db\models\loading.py", line 78, in
load_app
models = import_module('.models', app_name)
File "C:\Python27\lib\site-packages\django\utils\importlib.py", line 35, in im
port_module
__import__(name)
File "C:\django\pley\..\pley\accounts\models.py", line 3, in <module>
from registration import signals
ImportError: cannot import name signals
Se avete bisogno di ulteriori dettagli, come il codice per gli altri file, proprio commento su questa questione in modo che io possa aggiornare.
Soluzione 2
Va bene, ho intenzione di rispondere a questa me stesso. Grazie a Bahamas da #django freenode.
Per prima cosa vai al tuo Python shell
>>> import registration
>>> print registration.__file__
/home/wenbert/.local/lib/python/registration/__init__.pyc
Fare un:
$ ls -la /home/wenbert/.local/lib/python/registration
non ho trovato signals.py
nella directory.
Quindi, scaricare il file tar.gz da: https://bitbucket.org/ubernostrum/ django-registrazione / src e reinstallazione.
TL; DR Avevo un rotto un'installazione (non signals.py) di django-registrazione. Download da sorgente e reinstallare manualmente.
Altri suggerimenti
Sembra ok per me. Quando si estrae django-registrazione si ottiene 2 cartelle doc
e registration
. In registration
cartella si dispone di un file chiamato signals.py
. Questo è precisamente il file che il Django app sta cercando di importazione.
In entrambi vedere se è stato aggiunto django-registration
come INSTALLED_APPS nel settings.py progetto.