Django: Różnice pomiędzy wersjami

(Projekt Django)
(Projekt Django)
Linia 30: Linia 30:
  
 
Istniejący projekt ''Django'' należy umieścić jako katalog <code class="directory">~/domains/''domena''/public_python</code>. W przypadku gdy projekt nie nazywa się <code class="directory">public_python</code> należy zmienić jego nazwę.
 
Istniejący projekt ''Django'' należy umieścić jako katalog <code class="directory">~/domains/''domena''/public_python</code>. W przypadku gdy projekt nie nazywa się <code class="directory">public_python</code> należy zmienić jego nazwę.
 +
 +
=== Konfiguracja ''Phusion Passenger'' ===
 +
 +
Ostatnim krokiem jest konfiguracja modułu ''Phusion Passenger'', który jest odpowiedzialny za uruchomienie aplikacji ''Django''. Należy w katalogu projektu django (<code class="directory">~/domains/''domena''/public_python</code>) utworzyć plik <code class="directory">passenger_wsgi.py</code> i umieścić w nim następującą zawartość (zależnie od wersji Django), modyfikując linijkę wskazującą nazwę aplikacji (oznaczoną komentarzem):
 +
 +
==== Django 1.7 i nowsze ====
 +
<syntaxhighlight lang="python">
 +
import sys, os
 +
 +
sys.path.append(os.getcwd())
 +
os.environ['DJANGO_SETTINGS_MODULE'] = "nazwa_aplikacji.settings"  # zmienić 'nazwa_aplikacji' na
 +
                                                                  # nazwę projektu django
 +
 +
from django.core.wsgi import get_wsgi_application
 +
application = get_wsgi_application()
 +
</syntaxhighlight>
 +
 +
==== Django do wersji 1.6 włącznie ====
 +
<syntaxhighlight lang="python">
 +
import sys, os
 +
 +
sys.path.append(os.getcwd())
 +
os.environ['DJANGO_SETTINGS_MODULE'] = "nazwa_aplikacji.settings"  # zmienić 'nazwa_aplikacji' na
 +
                                                                  # nazwę projektu django
 +
 +
import django.core.handlers.wsgi
 +
application = django.core.handlers.wsgi.WSGIHandler()
 +
</syntaxhighlight>
 +
 +
==== Nazwa aplikacji ====
 +
 +
Nazwę aplikacji (projektu ''Django'') można wyciągnąć z pliku <code class="directory">manage.py</code> poleceniem <code>grep DJANGO_SETTINGS_MODULE manage.py</code>.
  
 
=== Odnośniki zewnętrzne ===
 
=== Odnośniki zewnętrzne ===

Wersja z 15:00, 14 gru 2014

Szablon:Stub

Django to otwarty, napisany w [[Python|Pythonie] framework przeznaczony do tworzenia aplikacji WWW. Na serwerach MyDevil.net możliwe jest uruchamianie stron opartych o ten framework dzięki zastosowaniu technologii Phusion Passenger.

Wstępna konfiguracja domeny

Do uruchomienia strony napisanej w Django należy pierw zadbać o prawidłową konfigurację samej domeny. Przed przystąpieniem do dalszych kroków należy upewnić się, że:

  • Domena jest prawidłowo dodana i skonfigurowana w naszym systemie DNS,
  • Została dodana Strona WWW z wskazaniem typu Python.

Projekt Django

Głównym katalogiem katalog projektu Django (tj. katalog, w którym znajduje się plik manage.py) musi być folder /usr/home/$USER/domains/domena/public_python. Nazwa projektu Django nie ma znaczenia, dopóki zachowana jest powyższa nazwa katalogu.

Nowy projekt django

Nowy projekt django należy utworzyć w katalogu ~/domains/domena/public_python - najprostszym sposobem utworzenia odpowiedniego projektu jest wydanie następujących poleceń:

DOMAIN=example.com  # zmienną DOMAIN należy zmodyfikować
cd ~/domains/$DOMAIN/
rm -rf public_python
django-admin.py startproject public_python

W ostatnim poleceniu można zmienić nazwę public_python na dowolną nazwę projektu - należy wtedy pamiętać, że projekt zostanie utworzony w katalogu o tej właśnie nazwie, którą trzeba zmienić na public_python.

Istniejący projekt django

Istniejący projekt Django należy umieścić jako katalog ~/domains/domena/public_python. W przypadku gdy projekt nie nazywa się public_python należy zmienić jego nazwę.

Konfiguracja Phusion Passenger

Ostatnim krokiem jest konfiguracja modułu Phusion Passenger, który jest odpowiedzialny za uruchomienie aplikacji Django. Należy w katalogu projektu django (~/domains/domena/public_python) utworzyć plik passenger_wsgi.py i umieścić w nim następującą zawartość (zależnie od wersji Django), modyfikując linijkę wskazującą nazwę aplikacji (oznaczoną komentarzem):

Django 1.7 i nowsze

import sys, os

sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = "nazwa_aplikacji.settings"  # zmienić 'nazwa_aplikacji' na
                                                                   # nazwę projektu django 

from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()

Django do wersji 1.6 włącznie

import sys, os

sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = "nazwa_aplikacji.settings"  # zmienić 'nazwa_aplikacji' na
                                                                   # nazwę projektu django 

import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()

Nazwa aplikacji

Nazwę aplikacji (projektu Django) można wyciągnąć z pliku manage.py poleceniem grep DJANGO_SETTINGS_MODULE manage.py.

Odnośniki zewnętrzne