Wygląda na to, że instaluję Django 1.3.1 w Ubuntu 12.04. Jak mogę zainstalować Django 1.6?
sudo apt-get install python-django
Wygląda na to, że instaluję Django 1.3.1 w Ubuntu 12.04. Jak mogę zainstalować Django 1.6?
sudo apt-get install python-django
Odpowiedzi:
Najpierw usuń poprzednio zainstalowaną wersję django 1.3.1, usuwając django
folder wewnątrz /usr/local/lib/pythonx.x/dist-packages
( xx oznacza wersję Pythona ). Następnie wykonaj poniższe kroki,
Pobierz Django 1.6 stąd .
Otwórz terminal i przejdź do katalogu, w którym umieściłeś Django 1.6
.
cd path/to/driectory/which/contains/django1.6.tar.gz
Wyodrębnij django1.6.tar.gz
, uruchamiając poniższe polecenie.
tar -xzvf Django-1.6.tar.gz
Przejdź do Django-1.6
katalogu
cd Django-1.6
Uruchom poniższe polecenie, aby zainstalować Django-1.6
sudo python setup.py install
Chociaż możesz zainstalować go ręcznie ( setup.py
), zalecamy korzystanie z menedżera pakietów Python, ponieważ łatwiej jest go zainstalować, konserwować i aktualizować.
Zainstaluj Pip, menedżera pakietów Python.
sudo apt-get install python-pip
Opcjonalnie, ale zalecane, uaktualnij pip
, używając samego:
sudo pip install -U pip
Zainstaluj najnowszą stabilną wersję Django:
sudo pip install Django
To instaluje 1.6.2 w momencie pisania ( sprawdź tutaj najnowszą wersję pypi ).
Aby zainstalować konkretną wersję, dodaj specyfikator wymagań w następujący sposób:
sudo pip install Django==1.6.2
Zauważ, że APT, zarządzanie pakietami Debian / Ubuntu nadal będzie raportować zainstalowaną starszą wersję i nadal jest zainstalowane. APT instaluje się w ścieżkach pakietów dystrybucyjnych, a Pip instaluje się w ścieżkach pakietów serwisowych. Ten ostatni ma pierwszeństwo, więc zostaną wybrane pakiety zainstalowane lokalnie. Zobacz także: Jaka jest różnica między pakietami dist a pakietami site?
sudo pip install
jest złą praktyką, która może działać dla django, ale może naprawdę popsuć czyjś system w innych sytuacjach. Nie podważaj zalet zarządzania pakietami przez Ubuntu. Najłatwiej to zrobić za pomocą virtualenvwrapper.