Jednym z najpopularniejszych i często wykorzystywanych w budowie aplikacji internetowych bibliotek jest framework Django. W internecie dostępnych jest wiele tutoriali wprowadzających do samego języka Python, jak i samego framework’u. W poniższym poście, który stanowi 1 część cyklu postów na temat Django, chciałbym w krótki sposób przedstawić najważniejsze z kroków wprowadzających osoby początkujące.
Sprawdzenie wersji Django Link to heading
$ python3 -m django --version
Utworzenie projektu Link to heading
$ django-admin startproject example
Najważniejsze pliki w nowo utworzonym projekcie:
manager.py
- główny plik wykorzystywany do zarządzania aplikacją, jej uruchamiania, wykonywania migracji bazy danych itd.;settings.py
- plik zawierający ustawienia aplikacji;urls.py
- plik, w którym definiujemy routingi tzn. dla jakich URL’i mają być wykonywane określone czynności czy wyświetlane odpowiednie widoki;wsgi.py
- plik zawierający konfigurację WSGI.
Uruchomienie serwera z aplikacją Link to heading
$ python3 manage.py runserver
Utworzenie aplikacji w ramach projektu Link to heading
$ python3 manage.py startapp app
Pierwszy widok Link to heading
Implementacja prostego widoku w pliku app/views.py
:
from django.http import HttpResponse
def index(request):
return HttpResponse("Simple app in Django")
Routing Link to heading
Definicja routingu w aplikacji w pliku app/urls.py
:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
Definicja routingu w całym projekcie w pliku urls.py
:
from django.conf.urls import include, url
from django.contrib import admin
from . import views
urlpatterns = [
url(r'^/?app/?$', include('app.urls')),
url(r'^/?$', views.index, name='index'),
url(r'^admin/', admin.site.urls),
]
Baza danych Link to heading
Przygotowanie do migracji bazy danych tj. utworzenia wymaganych tabel zdefiniowanych w pliku z ustawieniami:
$ python3 manage.py makemigrations
Wykonanie migracji:
$ python3 manage.py migrate
Utworzenie konta administratora Link to heading
$ python3 manage.py createsuperuser