Попытка использовать virtualenv Django 1.4.1

У меня Django 1.2.1 на сервере. Мне нужно использовать практически Python для установки Django 1.4.1 и адаптера для PostgreSQL, который я хочу. Я пытаюсь настроить это программное обеспечение на моем сервере. Итак, я бегу

virtualenv --python=python2.6 env
. env/bin/activate
pip install -r requirements.txt

Выход

:~/arkisto$ virtualenv --python=python2.6 env
Running virtualenv with interpreter /usr/bin/python2.6
New python executable in env/bin/python2.6
Also creating executable in env/bin/python
Installing distribute..................................................................................................................................................................................done.
:~/arkisto$  . env/bin/activate
(env):~/arkisto$ pip install -r requirements.txt
Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /usr/lib/python2.6/dist-packages (from -r requirements.txt (line 2))
Downloading/unpacking django==1.4.1 (from -r requirements.txt (line 1))
  Downloading Django-1.4.1.tar.gz (7.7Mb): 7.7Mb downloaded
  Running setup.py egg_info for package django
Installing collected packages: django
  Found existing installation: Django 1.2.3
    Not uninstalling Django at /usr/lib/pymodules/python2.6, outside environment /home/users/sa/tentti/env
  Running setup.py install for django
    changing mode of build/scripts-2.6/django-admin.py from 644 to 755
    changing mode of /home/users/sa/arkisto/env/bin/django-admin.py to 755
Successfully installed django
Cleaning up...

затем, увидев версию Django на сервере

(env)$ django-admin --version
1.2.3

Как вы можете использовать программное обеспечение, установленное этими командами?

4 ответа

Решение

При установке через pip в virtualen v административный скрипт django обычно устанавливается под именем django-admin.py (с расширением файла). Вполне вероятно, что общесистемный django установил этот скрипт без расширения, поэтому вы к нему прибегаете.

Пытаться

$ django-admin.py --version

В зависимости от вашей версии virtualenv вам может понадобиться добавить флаг --no-site-packages при создании venv следующим образом:

virtualenv --python=python2.6 --no-site-packages env

Это скажет virtualenv не делать глобально установленные пакеты доступными внутри вашего venv.

Расширение до ответа пользователя 214462

Я запускаю ответ пользователя user214462

virtualenv --python=python2.6 --no-site-packages env

я получил

Running virtualenv with interpreter /usr/bin/python2.6
The --no-site-packages flag is deprecated; it is now the default behavior.
Overwriting env/lib/python2.6/site.py with new content
New python executable in env/bin/python2.6
Not overwriting existing python script env/bin/python (you must use env/bin/python2.6)
Overwriting env/lib/python2.6/distutils/__init__.py with new content
Installing distribute..............................................................................................................................................................................................done.
Installing pip................done.
Overwriting env/bin/activate with new content
Overwriting env/bin/activate_this.py with new content

который, кажется, работает.

2-е расширение для ответа пользователя 214462

Я пытаюсь объединить команду virtualenv для установки Django1.4.1

virtualenv --python=python2.6 --no-site-packages env python setup.py install  test/

где я не понимаю синтаксис. Я поставил папку test/ туда из-за следующей ошибки, которую я получаю после запуска ее без папки тоже

Running virtualenv with interpreter /usr/bin/python2.6
There must be only one argument: DEST_DIR (you gave setup.py install env test/)
Usage: virtualenv.py [OPTIONS] DEST_DIR

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

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

Как вы можете установить Django1.4.1, не делая глобально установленные пакеты доступными внутри вашего venv?

Другие вопросы по тегам