Михаиллл
Михаиллл14 червня 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
Стабільний хостинг, на якому розміщується соціальна мережа EVILEG. Для проектів на Django радимо VDS хостинг.

Вам це подобається? Поділіться в соціальних мережах!

30
Илья Чичак
  • 15 червня 2019 р. 06:34
  • (відредаговано)

вы пытаетесь вызвать команду 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 червня 2019 р. 07:14
    • (відредаговано)

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

    python -m venv venv
    

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

    python -m venv
    

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

      Илья Чичак
      • 15 червня 2019 р. 07:18

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

        Михаиллл
        • 15 червня 2019 р. 07:18

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

          Михаиллл
          • 15 червня 2019 р. 07:19

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

            Илья Чичак
            • 15 червня 2019 р. 07:38

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

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

              Михаиллл
              • 15 червня 2019 р. 07:41
              • (відредаговано)

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

              python -m venv venv
              

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

                Михаиллл
                • 15 червня 2019 р. 07:57
                • (відредаговано)

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

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

                pip install django
                

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

                  Илья Чичак
                  • 15 червня 2019 р. 08:10


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

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

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

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

                    Михаиллл
                    • 15 червня 2019 р. 08:22

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

                      Илья Чичак
                      • 15 червня 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 червня 2019 р. 09:08
                        • (відредаговано)

                        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 червня 2019 р. 09:19

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

                            Илья Чичак
                            • 15 червня 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 червня 2019 р. 09:42

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

                                Илья Чичак
                                • 15 червня 2019 р. 09:59

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

                                  Михаиллл
                                  • 15 червня 2019 р. 10:30

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

                                    Михаиллл
                                    • 15 червня 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 червня 2019 р. 10:37
                                      • (відредаговано)

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

                                        Илья Чичак
                                        • 15 червня 2019 р. 10:54
                                        • Відповідь була позначена як рішення.

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

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

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

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

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

                                          Михаиллл
                                          • 15 червня 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 червня 2019 р. 11:17

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

                                              Михаиллл
                                              • 15 червня 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 червня 2019 р. 14:25

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

                                                  Михаиллл
                                                  • 16 червня 2019 р. 02:04

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

                                                    Михаиллл
                                                    • 16 червня 2019 р. 07:27

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

                                                    pip install djangorestframework
                                                    

                                                    ?

                                                      Илья Чичак
                                                      • 16 червня 2019 р. 07:46

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

                                                        Михаиллл
                                                        • 16 червня 2019 р. 11:27
                                                        • (відредаговано)

                                                        Нашел статью с описанием 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 червня 2019 р. 11:36

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

                                                            Михаиллл
                                                            • 16 червня 2019 р. 11:39

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

                                                              Коментарі

                                                              Only authorized users can post comments.
                                                              Please, Log in or Sign up
                                                              AD

                                                              C++ - Тест 004. Указатели, Массивы и Циклы

                                                              • Результат:50бали,
                                                              • Рейтинг балів-4
                                                              m
                                                              • molni99
                                                              • 26 жовтня 2024 р. 01:37

                                                              C++ - Тест 004. Указатели, Массивы и Циклы

                                                              • Результат:80бали,
                                                              • Рейтинг балів4
                                                              m
                                                              • molni99
                                                              • 26 жовтня 2024 р. 01:29

                                                              C++ - Тест 004. Указатели, Массивы и Циклы

                                                              • Результат:20бали,
                                                              • Рейтинг балів-10
                                                              Останні коментарі
                                                              ИМ
                                                              Игорь Максимов22 листопада 2024 р. 11:51
                                                              Django - Підручник 017. Налаштуйте сторінку входу до Django Добрый вечер Евгений! Я сделал себе авторизацию аналогичную вашей, все работает, кроме возврата к предидущей странице. Редеректит всегда на главную, хотя в логах сервера вижу запросы на правильн…
                                                              Evgenii Legotckoi
                                                              Evgenii Legotckoi31 жовтня 2024 р. 14:37
                                                              Django - Урок 064. Як написати розширення для Python Markdown Добрый день. Да, можно. Либо через такие же плагины, либо с постобработкой через python библиотеку Beautiful Soup
                                                              A
                                                              ALO1ZE19 жовтня 2024 р. 08:19
                                                              Читалка файлів fb3 на Qt Creator Подскажите как это запустить? Я не шарю в программировании и кодинге. Скачал и установаил Qt, но куча ошибок выдается и не запустить. А очень надо fb3 переконвертировать в html
                                                              ИМ
                                                              Игорь Максимов05 жовтня 2024 р. 07:51
                                                              Django - Урок 064. Як написати розширення для Python Markdown Приветствую Евгений! У меня вопрос. Можно ли вставлять свои классы в разметку редактора markdown? Допустим имея стандартную разметку: <ul> <li></li> <li></l…
                                                              d
                                                              dblas505 липня 2024 р. 11:02
                                                              QML - Урок 016. База даних SQLite та робота з нею в QML Qt Здравствуйте, возникает такая проблема (я новичок): ApplicationWindow неизвестный элемент. (М300) для TextField и Button аналогично. Могу предположить, что из-за более новой верси…
                                                              Тепер обговоріть на форумі
                                                              Evgenii Legotckoi
                                                              Evgenii Legotckoi24 червня 2024 р. 15:11
                                                              добавить qlineseries в функции Я тут. Работы оень много. Отправил его в бан.
                                                              t
                                                              tonypeachey115 листопада 2024 р. 06:04
                                                              google domain [url=https://google.com/]domain[/url] domain [http://www.example.com link title]
                                                              NSProject
                                                              NSProject04 червня 2022 р. 03:49
                                                              Всё ещё разбираюсь с кешем. В следствии прочтения данной статьи. Я принял для себя решение сделать кеширование свойств менеджера модели LikeDislike. И так как установка evileg_core для меня не была возможна, ибо он писался…
                                                              9
                                                              9Anonim25 жовтня 2024 р. 09:10
                                                              Машина тьюринга // Начальное состояние 0 0, ,<,1 // Переход в состояние 1 при пустом символе 0,0,>,0 // Остаемся в состоянии 0, двигаясь вправо при встрече 0 0,1,>…

                                                              Слідкуйте за нами в соціальних мережах