Instalacja i uruchamianie Django – Pomocne wskazówki
Krok pierwszy – instalacja Pythona
Django dostosowane jest do specyfikacji WSGI, więc działa na dowolnych serwerach internetowych, które spełniają wymagania tego interfejsu.
Można korzystać z Python 2.3 jak również nowszych wersji tego języka programowania. W tym celu pobiera się Pythona ze strony Python Software Foundation, a mianowicie http://www.python.org. Korzystając z tej strony można także zostać członkiem fundacji i starać się w przyszłości o status stypendysty Pythona.
U niektórych użytkowników Python jest już wcześniej zainstalowany, np. gdy korzysta się z Linuksa czy też Mac OS X. Instalacja Apache zależna jest od tego czy potrzebujesz serwera produkcyjnego. Jeśli zachodzi taka konieczność Apache należy zainstalować wraz z mod_pythonem.
Krok drugi – uruchomienie bazy danych
Django współpracuje z takimi serwerami jak PostgreSQL, MySQL, Oracle oraz SQLite. A zatem używanie bazy danych z zastosowaniem API Django wymaga sprawdzenia czy serwer bazodanowy działa. Oprócz tego należy upewnić się czy zainstalowane są właściwe sterowniki bazy danych.
PostgreSQL wymaga użycia pakietu psycopg. Dozwolone jest wykorzystanie wersji 1 oraz 2 (podczas konfiguracji bazodanowej w Django dla wersji 1 wybierz postgresql natomiast dla wersji 2 postgresql_psycopg2).
MySQL wymaga zastosowania MySQLdb w wersji 1.2.1p2 lub wyższej.
Używanie SQLite i Pythona w postaci 2.3 lub 2.4 wymaga zastosowania pysqlite w wersji 2.0.3 albo wyższej. Przy czym Python 2.5 dystrybuowany jest z wrappem sqlite w bibliotece standardowej, więc nie wymaga dodatkowych zabiegów instalacyjnych.
Korzystanie z Oracle wymaga użycia cx_Oracle w wersji 4.3.1 lub wyższej.
Korzystanie z polecenia manage.py syncdb do dokonywnaia automatyzacji procesu organizacji tabel w bazie danych wymaga weryfikacji uprawnień.
Djano musi posiadać uprawnienia do tworzenia a także modyfikacji tabel w wykorzystywanej bazie danych, więc trzeba sprawdzić czy są nadane.
W przypadku tworzenia tabel ręcznie należy nadać Django uprawnienia (SELECT, INSERT, DELETE, UPDATE).
Czasami (niektóre bazy danych) uprawienia do ALERT i TABLE niezbędne są w czasie wykonywania syncdb.
Wszelkie stare wersje Django powinny być usunięte. Nawet gdy Django ma być aktualizowane trzeba najpierw wykasować wcześniejszą jego wersję. W przypadku wcześniejszej instalacji za pomocą setup.py install wystarczy usunąć katalog django z site-packages, zaś jeśli Django było instalowane z pythonowego pakietu egg, należy wykasować z Django plik .eeg, jak również odniesienia do niego z pliku easy-install.pth. Plik o którym mowa powinien się znajdować także w katalogu site-packages.
Położenie katalogu w którym został zainstalowany Python wpływa na umiejscowienie katalogu site-packages. To gdzie zostanie ulokowany katalog site-packages zależy również od systemu operacyjnego, którym się posługujesz.
By odszukać site-packages użyj komendy:
python -c "from distutils.sysconfig import get_python_lib; \ print get_python_lib()"
Krok trzeci – instalacja kodu Django
Tutaj należy podkreślić fakt, że mogą zachodzić różnice z uwagi na to z jakiego źródła będzie korzystał użytkownik. Trochę inna instrukcja będzie dotyczyć instalacji ostatniej wersji rozwojowej Django, inna będzie instalacja przy pobraniu ostatniego oficjalnego wydania, a jeszcze inna, gdy korzysta się z paczek dla konkretnych dystrybucji.
Instalacja z paczek
Warto najpierw sprawdzić czy Twoja dystrybucja/platforma nie zapewnia oficjalnych instalatorów/paczek Django. Takie paczki w większości przypadków pozwalają na automatyczną instalację i aktualizację ścieżek.
Instalacja wydania oficjalnego
- Pobranie ostatniej wersji
- Rozpakowanie archiwum
- Zmiana katalogu
- Wprowadzenie w linie poleceń (w przypadku systemów uniksopodobnych – Linux, Mac OS X itp.) lub uruchomienie powłoki poleceń z uprawnieniami administratora i wykonanie polecenia (w przypadku Windowsa)
Instalacja wersji rozwojowej
Instalacja wersji rozwojowej daje możliwość uaktualniania kodu Django, gdy bugi zostają zmienione.
- Sprawdź czy posiadasz Subversion i czy jesteś w stanie działać na niej ze środowiska powłoki.
- Wykorzystaj svn co http://code.djangoproject.com/svn/django/trunk/ django-trunk do pobrania głównego toru rozwojowego Django
- Ważne, by interpreter Pythona był w stanie ładować kod Django. W systemach uniksopodobnych (Linux, Mac OS X) używa się w tym celu linków symbolicznych, tj.: ln -s `pwd`/django-trunk/django SITE-PACKAGES-DIR/django
SITE-PACKAGES-DIR musi pasować do usytuowania katalogu site-packages jaka istnieje w systemie użytkownika. Jeśli chodzi o osoby korzystające z Windowsa bardzo dobrym krokiem jest zdefiniowanie własnej zmiennej systemowej PYTHONPAD w ten sposób, by obejmowała katalog django-trunk (definiowanie w panelu sterowania).
Gdy samodzielnie ustawiana jest zmienna PYTHONPAD w ten sposób, należy identyczną zmianę wprowadzić w konfiguracji Apache przy wdrożeniu w środowisku produkcyjnym. Należy ustawić PythonPad w pliku konfiguracyjnym Apache.
4. Kolejna kwestia to konieczność utworzenia linku symbolicznego (dotyczy systemów uniksopodobnych) do pliku
django-trunk/django/bin/django-admin.py w katalogu posiadanej ścieżki systemowej, czyli
/usr/local/bin dzięki czemu z poziomu każdego katalogu będzie można wpisywać
django-admin.py i tym samym uniknąć wpisywania polecenia z pełną ścieżką do pliku
Przykładowo:
ln -s `pwd`/django-trunk/django/bin/django-admin.py /usr/local/bin
Kopiowanie pliku django-trunk/django/bin/django-admin.py w ścieżce systemowej C:\Python24\Scripts lub w innym miejscu takiej ścieżki zapewnia identyczne efekty użytkownikom systemu Windows.
Uaktualnianie własnej kopii kodu źródłowego Django polega na użyciu polecenia
svn update z wnętrza katalogu django-trunk. Subversion samodzielnie pobierze wszelkie zmiany.