Михаиллл
Михаиллл14. Juni 2019 13:43

Как подключить Django

Добрый день.
Скачал Pyton 3.7 и Django 2,2,2 (в виде папки django-master).
Скажите пожалуйста, что теперь делать и как подключить ?
Если делаю так

>>> pip install Django==2.2.2
SyntaxError: invalid syntax

то получаю ошибку SyntaxError: invalid syntax
pip был отмечен галочкой при установке

Рекомендуємо хостинг TIMEWEB
Рекомендуємо хостинг TIMEWEB
Stabiles Hosting des sozialen Netzwerks EVILEG. Wir empfehlen VDS-Hosting für Django-Projekte.

Magst du es? In sozialen Netzwerken teilen!

30
Илья Чичак
  • 15. Juni 2019 06:34
  • (bearbeitet)

вы пытаетесь вызвать команду pip из интерпретатора. это делается не так. pip - консольная утилита. ее нужно вызывать напрямую из консоли

давайте начнем с самого начала: сначала нужно создать виртуальное окружение.

для этого в windows нужно открыть командную строку, перейти в папку, в которой планируется создавать проект и написать

python -m venv venv
(venv - например, можно любое другое название)

затем надо активировать это окружение:

venv(или то название, которое вы выбрали)/Scripts/activate

и после этого надо уже ставить Django:

pip install django

Если у вас linux (и ubuntu) нужно сначала поставить venv:

sudo apt install python3-venv

после этого так же перейти в папку, где планируется писать проект, сделать

python3 -m venv .venv
(для linux я предпочитаю папку окружения назвать .venv, чтобы она была невидимой)

активировать окружение:

source .venv/bin/activate

после этого так же сделать

pip install django

лучше всего начать с чтения "Быстого старта" для Django: https://djbook.ru/rel1.9/
там версия старая, но приниципы не изменились

    Михаиллл
    • 15. Juni 2019 07:14
    • (bearbeitet)

    Если я в консоли пишу

    python -m venv venv
    

    то получаю ошибку.
    И если так, то тоже ошибку

    python -m venv
    

    но при этом создалась папка venv

      Илья Чичак
      • 15. Juni 2019 07:18

      опять же: какая у вас ОС?

        Михаиллл
        • 15. Juni 2019 07:18

        виндовс 7 64бит про

          Михаиллл
          • 15. Juni 2019 07:19

          Вот скрин с ошибками

            Илья Чичак
            • 15. Juni 2019 07:38

            Для начала, попробуйте переустановить Python (в установочнике будет пункт Repair). и проконтролируйте, что будет отмечена галочка

            Add Python 3.7 to PATH
            . Это нужно чтобы из любого места можно было вызывать команду Python. и помимо этого там произойдет некоторая машинерия, чтобы дополнительные утилиты типа того же pip или venv заработали. Я пока постараюсь отрыть где-нибудь комп на Windows=) Мне несколько сложно - у меня сейчас под рукой только Ubuntu

              Михаиллл
              • 15. Juni 2019 07:41
              • (bearbeitet)

              Я уже пробовал все удалять и при установке ставить все галочки. Результат тотже.
              А в видосах говорят что виртуальное окружение можно создать, написав в программе

              python -m venv venv
              

              и запустив ее, но у меня выдает ошибки. И вообще мой Pyton не принимает слов "pyton", "pip"

                Михаиллл
                • 15. Juni 2019 07:57
                • (bearbeitet)

                Вставил недостоющие файлы питона в нужную папку, создал виртуальное окружение. Похоже был баг, питон не верно определил положение экзешников.

                Также в PyCharm подключил это окружение.
                После этого в cmd сработала команда

                pip install django
                

                что то видимо качалось , но не понятно куда.
                Похоже можно подключить скаченую папку django-master через PyCharm, но только как?

                  Илья Чичак
                  • 15. Juni 2019 08:10


                  Вобщем, у меня получилось так:

                  я создал в корне диска папку pytest, в ней вызвал python -m venv venv и создалась папка venv. После этого я вызвал venv/Scripts/activate и у меня активировалось окружение (приписка '(venv)' в начале строки). и после этого я установил Django через pip.

                  Если прям пошагово у вас не получится, я думаю, что надо гуглить ошибку и решать ее.

                  Был установлен Python 3.7.3 за пару минут до этого.

                    Михаиллл
                    • 15. Juni 2019 08:22

                    А что потом вы делали с Django ? Как его подключать к проекту?

                      Илья Чичак
                      • 15. Juni 2019 08:36

                      после того, как вы разобрались с Python я настоятельно советую поставить sqlite. как это сделать в windows - можно легко нагуглить. Пытаться работать с нормальными БД, типа PostgreSQL в Windows - себе дороже. Загадит полсистемы, а работать толком не будет. Для промышленной разработки на Python/Django - только linux (хотябы в виртуалке, типа virtualbox). Но это когда-нибудь потом.

                      После того, как у вас установился Python и sqlite, создано и активировано виртуальное окружение (вообще, его смысл в том, чтобы изолировать необходимые для проекта пакеты от пакетов других проектов. Всегда каждый проект должен начинаться с создания виртуального окружения - это уже стандарт де-факто), установлен Django - вам становится доступна команда django-admin. Она примитивна и нужна для создания самого базового проекта:

                      django-admin startproject <название проекта>
                      (обратите внимание, что стоит использовать только литиницу и желательно обойтись без спецсимволов)

                      после этого в папке <название проекта> будут созданы папка с названием проекта и файл manage.py. для проверки того, что все установилось правильно и все работает - выполните команду (с активированным виртуальным окружением!):

                      python manage.py runserver

                      и после этого перейдите в браузере по адресу http://127.0.0.1:8000/. там вы должны увидеть приветствие.

                      если все сделано правильно, открывайте Django book (https://djbook.ru/rel1.9/) и читайте. начните прямо с начала. и повторяйте то, что там написано. Но сразу предупрежу - в Django book используется версия 1.9. и в 2.2.2 немного переработана система работы с URL. как дойдете до этоого места - можете почитать офф документацию. ну или написать сюда=)

                        Михаиллл
                        • 15. Juni 2019 09:08
                        • (bearbeitet)

                        SQLite уже стоит на компе.
                        Попробовал повторить, командная строка говорит что джанго установлен.
                        Посмотрел, в папке E:\Programs\Python\Python37\Lib\site-packages появились 2 папки с джанго (наверно сразу туда можно было закинуть), хотя их содержание отличается от скаченой.
                        После этого я еще раз сделал виртуализацию, теперь PyCharm использует виртуализацию с джанго.
                        Но как проверить в проекте, что джанго раюотает?
                        Все эти команды в проекте приводят к ошибкам

                        # import django
                        # print(django.get_version())
                        #python3 --version
                        #pyton -V
                        #pyton  --version
                        #pip -V
                        #pip --version
                        #pip listcd
                        

                        работает только

                        import sys
                        print("pyton version")
                        print(sys.version_info)
                        

                        Виртуальное окружение точно работает, так как выдается первая строчка в компиляторе
                        E:\PytonProjects\test1\venv\Scripts\python.exe "E:\Programs\PyCharm Community Edition 2019.1.3\helpers\pydev\pydevconsole.py" --mode=client --port=51971

                          Михаиллл
                          • 15. Juni 2019 09:19

                          При этом у всех работает pip list а меня нет. В чем может быть касяк?

                            Илья Чичак
                            • 15. Juni 2019 09:22

                            Django не надо качать руками - вы не сможете сделать все необходимые манипуляции (типа симлинков для django-admin и прочих мелочей)

                            лучше всего удалите Django из E:\Programs\Python\Python37\Lib\site-packages с помощью команды (без виртуального окружения) pip uninstall django pytz sqlparse

                            Виртуализация сделана для того, чтобы изолировать проектаные библиотеки. Например в одном проекте вы используете Django 1.11, а в другом Django 2.2. если у вас будет установлено Django глобально, то будет использоваться только он. А так у каждого проекта свое окружение со своей версией Django и они друг другу не мешают.

                            я не совсем понимаю, как вы ходите интегрировать Django в проект.

                            попробуйте для начала просто изолированно поставить Django и запустить сервер. тоесть выполнить:

                            cd e:\
                            mkdir django_test_project
                            cd django_test_project
                            python -m venv venv
                            venv\Scripts\activate
                            pip install django
                            django-admin startproject project
                            cd project
                            python manage.py runserver

                            если все пройдет правильно, у вас будет базовая структура Django-проекта.

                            а там дальше на базе нее можно уже делать что угодно.

                            а лучше всего почитайте про venv, что это и зачем, например вот тут: https://python-scripts.com/virtualenv

                              Михаиллл
                              • 15. Juni 2019 09:42

                              Появилась папка django_test_project, в ней venv и project.
                              В project тоже папка project, db.sqlite3 и manage.py.
                              Скажите пожалуйста, что с эти делать?

                                Илья Чичак
                                • 15. Juni 2019 09:59

                                Это и есть базовая структура django проекта. если после команды python manage.py runserver в браузере на адресу 127.0.0.1:8000 показывается страница с приветствием, значит все установлено правильно. дальше все зависит от вас - изучайте документацию и пишите, что хотите.

                                  Михаиллл
                                  • 15. Juni 2019 10:30

                                  При попытке запуска manage.py получаю такое окно.
                                  Скажите пожалуйста, что это значит и что с ним делать?
                                  Если нажимаю выполнить, получаю ошибку :
                                  Configuration is still im incorrect

                                    Михаиллл
                                    • 15. Juni 2019 10:33

                                    Добавил интерпритатор и получил таие ошибки

                                    E:\Programs\Python\Python37\python.exe E:/django_test_project/project/manage.py
                                    Traceback (most recent call last):
                                      File "E:/django_test_project/project/manage.py", line 10, in main
                                        from django.core.management import execute_from_command_line
                                    ModuleNotFoundError: No module named 'django'
                                    
                                    The above exception was the direct cause of the following exception:
                                    
                                    Traceback (most recent call last):
                                      File "E:/django_test_project/project/manage.py", line 21, in <module>
                                        main()
                                      File "E:/django_test_project/project/manage.py", line 16, in main
                                        ) from exc
                                    ImportError: Couldn't import Django. Are you sure it's installed and available on your PYTHONPATH environment variable? Did you forget to activate a virtual environment?
                                    
                                    Process finished with exit code 1
                                    
                                    
                                      Михаиллл
                                      • 15. Juni 2019 10:37
                                      • (bearbeitet)

                                      может быть касяк с самим pyton?

                                        Илья Чичак
                                        • 15. Juni 2019 10:54
                                        • Die Antwort wurde als Lösung markiert.

                                        слова pyton в нем нет. есть Python

                                        в настройках pycharm нужно указать интерпретатор, находящийся в E:\django_test_project\venv\bin\python, а вы указали глобальный.

                                        при запуске manage.py нужно указать параметр runserver, поскольку сам по себе manage.py не делает ничего.

                                        а вообще, для начала, попробуйте просто из консоли запустить сервер. и я вам посоветовал бы поработать для начала в каком-нибудь vscode или notepad++.

                                        и начните читать документацию Django. там и про виртуальные окружения написано, и как запускать проект.

                                          Михаиллл
                                          • 15. Juni 2019 11:04

                                          Подключил сделанный интерпритатор, все заработало, большое спасибо за помощь.
                                          При запуске выдает это:

                                          E:\django_test_project\venv\Scripts\python.exe E:/django_test_project/project/manage.py
                                          
                                          Type 'manage.py help <subcommand>' for help on a specific subcommand.
                                          
                                          Available subcommands:
                                          
                                          [auth]
                                              changepassword
                                              createsuperuser
                                          
                                          [contenttypes]
                                              remove_stale_contenttypes
                                          
                                          [django]
                                              check
                                              compilemessages
                                              createcachetable
                                              dbshell
                                              diffsettings
                                              dumpdata
                                              flush
                                              inspectdb
                                              loaddata
                                              makemessages
                                              makemigrations
                                              migrate
                                              sendtestemail
                                              shell
                                              showmigrations
                                              sqlflush
                                              sqlmigrate
                                              sqlsequencereset
                                              squashmigrations
                                              startapp
                                              startproject
                                              test
                                              testserver
                                          
                                          [sessions]
                                              clearsessions
                                          
                                          [staticfiles]
                                              collectstatic
                                              findstatic
                                              runserver
                                          
                                          Process finished with exit code 0
                                          
                                          
                                            Илья Чичак
                                            • 15. Juni 2019 11:17

                                            в графе parameters укажите runserver

                                              Михаиллл
                                              • 15. Juni 2019 11:48

                                              Спасибо.
                                              Программа выдала следующее (кликнул по ссылке, браузер открыл сайт с картинкой ракеты):

                                              E:\django_test_project\venv\Scripts\python.exe E:/django_test_project/project/manage.py runserver
                                              Performing system checks...
                                              Watching for file changes with StatReloader
                                              
                                              System check identified no issues (0 silenced).
                                              
                                              You have 17 unapplied migration(s). Your project may not work properly until you apply the migrations for app(s): admin, auth, contenttypes, sessions.
                                              Run 'python manage.py migrate' to apply them.
                                              June 15, 2019 - 18:46:27
                                              Django version 2.2.2, using settings 'project.settings'
                                              Starting development server at http://127.0.0.1:8000/
                                              Quit the server with CTRL-BREAK.
                                              [15/Jun/2019 18:46:34] "GET / HTTP/1.1" 200 16348
                                              [15/Jun/2019 18:46:34] "GET /static/admin/css/fonts.css HTTP/1.1" 200 423
                                              [15/Jun/2019 18:46:34] "GET /static/admin/fonts/Roboto-Regular-webfont.woff HTTP/1.1" 200 85876
                                              [15/Jun/2019 18:46:34] "GET /static/admin/fonts/Roboto-Bold-webfont.woff HTTP/1.1" 200 86184
                                              [15/Jun/2019 18:46:34] "GET /static/admin/fonts/Roboto-Light-webfont.woff HTTP/1.1" 200 85692
                                              Not Found: /favicon.ico
                                              [15/Jun/2019 18:46:34] "GET /favicon.ico HTTP/1.1" 404 1973
                                              
                                              
                                                Илья Чичак
                                                • 15. Juni 2019 14:25

                                                Ну а что дальше требуется?

                                                  Михаиллл
                                                  • 16. Juni 2019 02:04

                                                  Дальше буду изучать как сделать REST API. Большое спасибо вам за помощь.
                                                  Если у вас вдруг окажется ссылка на статью, описывающую как это сделать, скиньте пожалуйста, а если нет, то в любом случае я вам очень благадарен.

                                                    Михаиллл
                                                    • 16. Juni 2019 07:27

                                                    Скажите пожалуйста в комплекте с django поставился ли djangorestframework или его нужно дополнителльно поставить командой

                                                    pip install djangorestframework
                                                    

                                                    ?

                                                      Илья Чичак
                                                      • 16. Juni 2019 07:46

                                                      читайте документацию, там есть ответы на 90% вопросов. и вообще, изучите инструмент, с которым вы работаете. или может быть воо

                                                        Михаиллл
                                                        • 16. Juni 2019 11:27
                                                        • (bearbeitet)

                                                        Нашел статью с описанием django_rest_framework.
                                                        В ней пишется что сначало нужно написать

                                                        pip install djangorestframework
                                                        pip install markdown  
                                                        pip install pyyaml    
                                                        pip install django-filter  
                                                        

                                                        Я зашел в пустую папку и так прописал. Что-то устонавливалось, но в папке оказалось пусто.
                                                        Нужно сначало писать

                                                        pip install djangorestframework
                                                        
                                                        И можно поставить дополнительные пакеты:
                                                        pip install markdown  
                                                        pip install pyyaml    
                                                        pip install django-filter  
                                                        

                                                        или ошибка гдето- еще?
                                                        И скажите пожалуйста, куда устанавливалось скаченное?

                                                        оказывается так все сразу устанавливается в основной pyton

                                                          Илья Чичак
                                                          • 16. Juni 2019 11:36

                                                          я считаю, что нужно заканчивать. вам нужно изучить основы. django установлен и запущен. тема закрыта. я вижу полное непонимание того, что происходит и как с этим работать. читайте документацию.

                                                            Михаиллл
                                                            • 16. Juni 2019 11:39

                                                            хорошо, спасибо

                                                              Kommentare

                                                              Nur autorisierte Benutzer können Kommentare posten.
                                                              Bitte Anmelden oder Registrieren
                                                              Letzte Kommentare
                                                              ИМ
                                                              Игорь Максимов5. Oktober 2024 07:51
                                                              Django – Lektion 064. So schreiben Sie eine Python-Markdown-Erweiterung Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
                                                              d
                                                              dblas55. Juli 2024 11:02
                                                              QML - Lektion 016. SQLite-Datenbank und das Arbeiten damit in QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
                                                              k
                                                              kmssr8. Februar 2024 18:43
                                                              Qt Linux - Lektion 001. Autorun Qt-Anwendung unter Linux как сделать автозапуск для флэтпака, который не даёт создавать файлы в ~/.config - вот это вопрос ))
                                                              Qt WinAPI - Lektion 007. Arbeiten mit ICMP-Ping in Qt Без строки #include <QRegularExpressionValidator> в заголовочном файле не работает валидатор.
                                                              EVA
                                                              EVA25. Dezember 2023 10:30
                                                              Boost - statisches Verknüpfen im CMake-Projekt unter Windows Ошибка LNK1104 часто возникает, когда компоновщик не может найти или открыть файл библиотеки. В вашем случае, это файл libboost_locale-vc142-mt-gd-x64-1_74.lib из библиотеки Boost для C+…
                                                              Jetzt im Forum diskutieren
                                                              J
                                                              JacobFib17. Oktober 2024 03:27
                                                              добавить qlineseries в функции Пользователь может получить любые разъяснения по интересующим вопросам, касающимся обработки его персональных данных, обратившись к Оператору с помощью электронной почты https://topdecorpro.ru…
                                                              JW
                                                              Jhon Wick1. Oktober 2024 15:52
                                                              Indian Food Restaurant In Columbus OH| Layla’s Kitchen Indian Restaurant If you're looking for a truly authentic https://www.laylaskitchenrestaurantohio.com/ , Layla’s Kitchen Indian Restaurant is your go-to destination. Located at 6152 Cleveland Ave, Colu…
                                                              КГ
                                                              Кирилл Гусарев27. September 2024 09:09
                                                              Не запускается программа на Qt: точка входа в процедуру не найдена в библиотеке DLL Написал программу на C++ Qt в Qt Creator, сбилдил Release с помощью MinGW 64-bit, бинарнику напихал dll-ки с помощью windeployqt.exe. При попытке запуска моей сбилженной программы выдаёт три оши…
                                                              F
                                                              Fynjy22. Juli 2024 04:15
                                                              при создании qml проекта Kits есть но недоступны для выбора Поставил Qt Creator 11.0.2. Qt 6.4.3 При создании проекта Qml не могу выбрать Kits, они все недоступны, хотя настроены и при создании обычного Qt Widget приложения их можно выбрать. В чем может …

                                                              Folgen Sie uns in sozialen Netzwerken