Как исправить ошибку, если я запущу mange.py запустите сервер Django версии 1.11

#python #django

Вопрос:

Если я хочу запустить свой manage.py runserver генерирует ошибку

 File "c:UsersDellAppDataLocalProgramsPythonPython39libsite-packagesdjangocontribadminwidgets.py", line 151
    ('%s=%s') % (k, v) for k, v in params.items(),
    ^
Syntax Error: Generator expression must be parenthesized
 

Комментарии:

1. Используйте более современную версию… Если вы действительно используете Django 1.11 — это ошибка… ему уже больше десяти лет… это не будет работать ни в одной версии Python 3.

2. На самом деле, Django 1.11 должен работать с Python 3 вплоть до версии 3.7 включительно. См . docs.djangoproject.com/en/1.11/faq/install/… . 3.9, безусловно, официально не поддерживается, и Django 1.11 больше не поддерживается: проблемы безопасности больше не будут исправлены, поэтому не используйте его.

3. @9769953 ааа, спасибо за разъяснение

4. Этот синтаксис (взяв полную строку кода из github.com/django/django/blob/stable/1.11.x/django/contrib/… ) на самом деле должно работать, даже с 3.9, так что на вашей стороне происходит что-то еще.

5. В целом: полностью откажитесь от 1.11 и начните с Django 3.2. Если (это большое «если») вам придется использовать 1.11 (возможно, потому, что вы хотите шаг за шагом перейти к 3.2), сначала обновите его до самой последней версии. Это должно исправить эту ошибку.