SyntaxError: Generator-Ausdruck muss parenthezised / python manage.py migrieren
Ich bin wirklich neu in der Programmierung und ich wollte Folgen, die Djangogirls tutorial, aber ich bin stucked jetzt.
In dem tutorial, ich bin hier:
Erstellen einer Datenbank für unseren blog, wir führen Sie Folgendes in der Konsole: python manage.py migrieren (müssen wir uns in der djangogirls Verzeichnis enthält die manage.py Datei). Wenn das gut geht, sollten Sie etwas wie dieses: ...
Gibt es keine option, um scheitern in den tutorial, aber ich habe eine Fehlermeldung:
(myvenv) C:\Users\Julcsi\djangogirls> python manage.py migrate
Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\core\management\__init__.py",
line 364, in execute_from_command_line
utility.execute()
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\core\management\__init__.py",
line 338, in execute
django.setup()
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\__init__.py",
line 27, in setup
apps.populate(settings.INSTALLED_APPS)
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\apps\registry.py",
line 85, in populate
app_config = AppConfig.create(entry)
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\apps\config.py",
line 94, in create
module = import_module(entry)
File "C:\Users\Julcsi\AppData\Local\Programs\Python\Python37\lib\importlib\__init__.py",
line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 994, in _gcd_import
File "<frozen importlib._bootstrap>", line 971, in _find_and_load
File "<frozen importlib._bootstrap>", line 955, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 665, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 723, in exec_module
File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_remove
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\contrib\admin\__init__.py",
line 4, in <module>
from django.contrib.admin.filters import (
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\contrib\admin\filters.py",
line 10, in <module>
from django.contrib.admin.options import IncorrectLookupParameters
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\contrib\admin\options.py",
line 12, in <module>
from django.contrib.admin import helpers, widgets
File "C:\Users\Julcsi\djangogirls\myvenv\lib\site-packages\django\contrib\admin\widgets.py",
line 152
'%s=%s' % (k, v) for k, v in params.items(),
SyntaxError: Generator expression must be parenthesized
Was mache ich falsch? Was soll ich tun?
Habe ich Python 3.7.0b1
Vielen Dank im Voraus für die Hilfe 🙂
Sollten Sie wirklich nicht sein, über eine unveröffentlichte version von Python. Stick-3.6.
Danke für Eure Antworten! 🙂 Leider, nachdem ich deinstalliert Python 3.7.0b1, wenn ich versuche, Sie zu "bitten" in die Befehlszeile, welche version aktiv ist, ist es immer noch die 3.7. 🙁
Ich habe gerade den gleichen Fehler mit Python-3.6
Danke für Eure Antworten! 🙂 Leider, nachdem ich deinstalliert Python 3.7.0b1, wenn ich versuche, Sie zu "bitten" in die Befehlszeile, welche version aktiv ist, ist es immer noch die 3.7. 🙁
Ich habe gerade den gleichen Fehler mit Python-3.6
InformationsquelleAutor julo6 | 2018-02-16
Du musst angemeldet sein, um einen Kommentar abzugeben.
Du bist nicht alles falsch; das ist ein problem zwischen Django und Python 3.7. Django hat einen fix, aber das Update ist noch nicht gemacht es in eine neue version noch nicht.
Können Sie installieren Sie die stabile version von Python, Python-3.6, in der Zwischenzeit.
Ohh, sorry, jetzt habe ich Begriffen, dass das problem existiert nur in den myvenv' virtuelle Umgebung (nachdem ich im "myvenv\Scripts\activate")
Vielen, vielen Dank! Nein, ich habe nicht realisiert, dass ich haben sollte, löschen Sie die venv und machen es wieder... Also dein Kommentar hat mich gerettet 😀 Jetzt funktioniert es! Nochmals vielen Dank!
Als pro github.com/django/django/commit/931c60c#commitcomment-30238549, das wird nie behoben werden. Django 1.11 LTS und Python 3.7+ ist nicht kompatibel.
Das tutorial ist auf dem neuesten Stand gehalten – 2.0 installiert.x jetzt – es ist also behoben.
InformationsquelleAutor
Auch, Upgrade von Django mein problem gelöst
Auf Ihrem terminal,
oder sehen hier
Herabstufung Python ist auch eine Lösung.
InformationsquelleAutor Chiharu Miyoshi
Dies ist eine bekannte Inkompatibilität zwischen Django und Python 3.7. Ein fix wurde bereits zusammengeführt Django 2.x Zweige und zurückportiert in 1.11 branch.
Um dieses Problem zu lösen, einfach update Django mindestens version 1.11.17 (oder 2.x) oder Sie können ein downgrade von Python auf version 3.6.
InformationsquelleAutor Antwane
Den Django Girls tutorial-version in Englisch hat nur eingeschaltet, um Django 2.0 sollte es kompatibel zu Python 3.7. (Django 2.0 enthält ein backport der fix erwähnt in Ry-'s Antwort.)
Damit jeder Anfang das tutorial jetzt in Ordnung sein sollte mit Python 3.7.
Wenn Sie haben bereits begonnen, das tutorial müsste man wieder mit der Django-installation Kapitel. Sie möchten, dass in einem neuen Verzeichnis (entweder löschen oder umbenennen Ihrer aktuellen
djangogirls
Verzeichnis oder wählen Sie einen anderen Namen für das neue Verzeichnis) die Dateien, die generierthängt von der Django-version im Einsatz.
InformationsquelleAutor das-g
Nur Django==2.2 werden unterstützt werden, um Python-3.7 so aktualisieren Sie Django-Version wird Ihr problem lösen
InformationsquelleAutor Rakesh Paruchuri
Pro Django ' s FAQ, Django 1.11.x ist nicht kompatibel mit Python 3.7.
Django 1.11.x erreicht Ende des mainstream-support am 2. Dezember 2017, und es erhält nur die Daten, Verlust und security-fixes bis zum Ende des Lebens.
InformationsquelleAutor Tim Graham
Als alle der oben genannten Antworten schon darauf hindeutet, dass es eine miss-match zwischen Django und Python-version.
Während der Erstellung einer virtuellen Umgebung, bitte führen Sie den folgenden Befehl
Wird es mit Python ist3.6 beim erstellen Ihrer virtuellen Umgebung.
Jetzt können Sie installieren, alle Abhängigkeiten in dieser virtuellen Umgebung.
InformationsquelleAutor Akash Giri