добавить переменные окружения для активации файла в virtualenv для проекта Django - PullRequest
0 голосов
/ 02 ноября 2018

Я недавно клонировал проект django и в файле README сказал:

Edit .venv/bin/activate and add this environment variables.

::

  export DJANGO_SETTINGS_MODULE="thissite.settings.development"
  export LD_LIBRARY_PATH=/usr/local/lib
  export LC_ALL='en_US.UTF-8'
  export LANG='en_US.UTF-8'

Итак, я построил эту виртуальную среду, и на этом шаге я должен просто скопировать и вставить переменные этой среды в файл активации (где именно?) Или что?

Файл активации:

# This file must be used with "source bin/activate" *from bash*
# you cannot run it directly

deactivate () {
unset -f pydoc >/dev/null 2>&1

# reset old environment variables
# ! [ -z ${VAR+_} ] returns true if VAR is declared at all
if ! [ -z "${_OLD_VIRTUAL_PATH+_}" ] ; then
    PATH="$_OLD_VIRTUAL_PATH"
    export PATH
    unset _OLD_VIRTUAL_PATH
fi
if ! [ -z "${_OLD_VIRTUAL_PYTHONHOME+_}" ] ; then
    PYTHONHOME="$_OLD_VIRTUAL_PYTHONHOME"
    export PYTHONHOME
    unset _OLD_VIRTUAL_PYTHONHOME
fi

if [ -n "${BASH-}" ] || [ -n "${ZSH_VERSION-}" ] ; then
    hash -r 2>/dev/null
fi

if ! [ -z "${_OLD_VIRTUAL_PS1+_}" ] ; then
    PS1="$_OLD_VIRTUAL_PS1"
    export PS1
    unset _OLD_VIRTUAL_PS1
fi

unset VIRTUAL_ENV
if [ ! "${1-}" = "nondestructive" ] ; then
# Self destruct!
    unset -f deactivate
fi
}

# unset irrelevant variables
deactivate nondestructive

VIRTUAL_ENV="/home/majid/Documents/Website/.venv"
export VIRTUAL_ENV

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

Я очень ценю, если кто-нибудь поможет мне решить эту проблему.

Ответы [ 2 ]

0 голосов
/ 02 ноября 2018

Если вы используете virtualenvwrapper, будет файл postactivate, в который вы можете поместить переменные env.

Зависит от того, как он настроен, но, вероятно, он находится где-то вроде:

/Users/<me>/.virtualenvs/<my_project>/bin

Просто вставьте эти операторы экспорта, и они будут доступны в вашем env, когда вы активируете его.

0 голосов
/ 02 ноября 2018

export KEY=VALUE - команда терминала. Просто скопируйте вставьте это на терминал будет работать. Если вам нужен больший контроль над проектом Django, я предлагаю вам установить <a href="https://pipenv.readthedocs.io/en/latest/" rel="nofollow noreferrer">pipenv</a> и создать файл с именем .env в корневой папке, где присутствует файл manage.py. Pipenv - рекомендуемый способ работы с virtualenv и управляющей средой.

.env

 DJANGO_SETTINGS_MODULE="thissite.settings.development"
 LD_LIBRARY_PATH=/usr/local/lib
 LC_ALL='en_US.UTF-8'
 LANG='en_US.UTF-8'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...