Python virtualenv нужно создавать там же, где и проект, к которому он принадлежит? - PullRequest
0 голосов
/ 06 февраля 2019

Недавно я запускаю проект на основе Flask / Python.Прямо сейчас я настроил среду - но я никогда не создаю проект шаг за шагом в Python, я только испытал маленькие сценарии и небольшие приложения, когда я изучаю язык программирования.

Я установил и установил все зависимости в той же папке, как вы видите здесь:

enter image description here

В 'env' -Я создал виртуальную среду.

В «TheSocial» - есть и будет само приложение.

Мои вопросы :

1) Если этот 'env' будет перемещен или он не был создан внутри 'project_py', мое приложение из 'TheSocial' все еще может работать внутри virutalenv, или нет?

2) Существуют ли какие-либо стандарты, которые вынужно уважать, когда вы создали какую-либо структуру проекта?

Я также видел уже отвеченный вопрос StackOverFlow , но я хочу найти ответы на вопрос 1)

Эти вопросы рассматриваются в общих чертах, чтобы понять, как реальные проекты структурированы и проектируются с нуля.

1 Ответ

0 голосов
/ 06 февраля 2019

1) Создание virtualenv изменяет $ PATH вашей системы:

 $ echo $PATH
/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin:/Users/wgonczaronek/bin:/usr/local/sbin
 $ source venv/bin/activate
 $ echo $PATH
/Users/wgonczaronek/Projects/django & flask security/CSP/csp-flask/venv/bin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/MacGPG2/bin:/Users/wgonczaronek/bin:/usr/local/sbin

Внутри activate за это отвечают следующие строки:

VIRTUAL_ENV="/Users/wgonczaronek/Projects/django & flask security/CSP/csp-flask/venv"
export VIRTUAL_ENV

_OLD_VIRTUAL_PATH="$PATH"
PATH="$VIRTUAL_ENV/bin:$PATH"

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

2) Просто будьте последовательны.В моем проекте мне нравится «инкапсулировать» репозиторий git в каталог с тем же именем, где я храню свой виртуальный env и другие вещи (у меня есть специальный файл FFF.txt, который обозначает часто забываемые функции, где я сохраняю всю информацию, связанную с проектом, дляличное использование: D).Это позволяет мне выполнять очистку после проекта в одной команде, когда я хочу избавиться от него, и меня не беспокоят соглашения об именах моей среды - мне не нужно редактировать .gitignore.Некоторые люди любят использовать virtual env wrapper или pyenv , которые сохраняют все виртуальные env вне проекта.Просто поэкспериментируйте и выясните, что подходит вам больше всего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...