2013-04-29 17 views
21

Appena fatto un aggiornamento da Ubuntu 12,10-13,04 e ottenere questo sito Django durante l'esecuzione in virtualenvsenza nome del modulo datetime dopo ubuntu 13.04 aggiornamento

(virtualenv)[email protected]:~/webapps/devsite/djangosite$ ./manage.py runserver 
Traceback (most recent call last): 
    File "./manage.py", line 2, in <module> 
    from django.core.management import execute_manager 
    File "/home/sysadmin/webapps/devsite/virtualenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 7, in <module> 
    from django.core.management.base import BaseCommand, CommandError, handle_default_options 
    File "/home/sysadmin/webapps/devsite/virtualenv/local/lib/python2.7/site-packages/django/core/management/base.py", line 14, in <module> 
    from django.utils.encoding import smart_str 
    File "/home/sysadmin/webapps/devsite/virtualenv/local/lib/python2.7/site-packages/django/utils/encoding.py", line 4, in <module> 
    import datetime 
ImportError: No module named datetime 
+0

13.04 non viene ora con Python 3? Non sono sicuro se ciò abbia qualche effetto sulla virtualenv precedente. – CppLearner

+0

il mio python predefinito è 2.7.4 Python 2.7.4 (predefinito, 19 aprile 2013, 18:28:01) [GCC 4.7.3] su linux2 –

+0

È possibile importare datetime dopo aver attivato il virtualenv in console? – alecxe

risposta

42

Basta fare

virtualenv /home/sysadmin/webapps/devsite/virtualenv/ 

questo sarà reinstallare Python in il VirtualEnv e funzionerà dopo quello (e non sarà necessario reinstallare le librerie).


Aggiornamento: quando avevo a che fare con lo stesso problema dopo l'aggiornamento 14,04-14,10, virtualenv non desidera sovrascrivere il link simbolico esistente per Python, così ho dovuto rimuoverlo prima (in questo esempio che avrebbe be rm /home/sysadmin/webapps/devsite/virtualenv/python)

+0

che era, grazie. –

+2

test Debian, lo stesso problema. Funziona OK dopo aver reinstallato un virtualenv. – xwild

+0

Ho dovuto eliminare prima i collegamenti 'bin/python' quindi eseguire' mkvirtualenv venv' dato che sto usando virtualenvwrapper –

Problemi correlati