Сначала создайте приложение Django или виртуальную среду? - PullRequest
0 голосов
/ 27 марта 2019

Я пытался успешно создавать проекты с использованием Django, однако я видел проекты, в которых пользователь сначала создаст проект, затем виртуальную среду. Я также видел случаи, когда пользователь создает виртуальную среду, а затем приложение django. Обе стороны утверждают, что их метод лучше, но сейчас я в замешательстве. Просьба помочь

Ответы [ 3 ]

0 голосов
/ 27 марта 2019

Лучше сначала создать виртуальную среду и начать работать в этой среде.то есть используйте python из этой среды.

преимущество:

a.Среда будет содержать весь пакет, необходимый для проекта

b.может переключаться между несколькими env (цель тестирования)

c.легко вести учет необходимых пакетов

d.Это не повлияет на другой проект, в котором вам нужен Python 3.5, а в проекте django вам нужен python 3.6

Недостаток: необходимо отслеживать каждый env в случае, если у вас много виртуальных env (все виртуальные env хранятся в одном и том же месте).точно так же как anaconda one, иначе, если хранить в папке проекта, тогда нет проблем для1 env)

0 голосов
/ 27 марта 2019

Если у вас есть виртуальная среда, вы можете отслеживать пакеты для каждого проекта.Когда виртуальная среда активирована, вы можете создать файл needs.txt с помощью команды

pip freeze > requirements.txt

Так что, если вы хотите запустить проект django под другим именем, вы можете установить свои пакеты из созданного вами файла требований.

pip install -r requirements.txt

Другой сценарий - когда у вашей ОС есть django 1.11, и у вас есть проект django, созданный с этой версией.Когда вы обновляете версию django в своей ОС, приложение django ломается.

Так что я думаю, что для каждого проекта django хорошим способом является наличие собственной виртуальной среды

0 голосов
/ 27 марта 2019

Это зависит от вашего использования. Допустим, у вас Django 2.1 установлен глобально, затем у вас есть проект, в котором вам нужно, скажем, Django 1.9, здесь вам нужно сначала настроить виртуальную среду

...