# Django 5.2.9 - dokumentacja

# Jak zainstalować Django

Ten dokument pomoże ci rozpocząć pracę z Django.

## Instalacja Pythona

Django jest pythonowym web-frameworkiem. Szczegóły znajdziesz w Której wersji Pythona mogę użyć z Django?.

Pobierz najnowszą wersję Pythona z https://www.python.org/downloads/ lub przez menadżer pakietów twojego systemu operacyjnego.

Python w systemie Windows

Jeśli dopiero zaczynasz pracę z Django i używasz systemu Windows, przydatny może być artykuł Jak zainstalować Django w systemie Windows.

## Zainstaluj Apache i `mod_wsgi`

Jeśli chcesz tylko poeksperymentować z Django, przeskocz od razu do następnej sekcji; Django zawiera lekki web serwer, którego możesz używać do testowania, więc nie musisz uruchamiać Apache’a dopóki nie będziesz gotowy na deployment Django w produkcji.

Jeśli chcesz użyć Django w witrynie produkcyjnej, użyj Apache’a z mod_wsgi. mod_wsgi działa w jednym z dwóch trybów: trybie osadzonym lub trybie demona. W trybie osadzonym, mod_wsgi jest podobny do mod_perl – osadza Pythona w Apache’u i ładuje kod Pythona do pamięci, gdy serwer jest uruchamiany. Kod pozostaje w pamięci w czasie życia procesu Apache’a, co prowadzi do znaczących zysków wydajności względem innych ustawień serwera. W trybie demona mod_wsgi tworzy niezależny proces demona, który obsługuje żądania. Proces demona może działać jako inny użytkownik od użytkownika serwera Web, co może prowadzić do większego bezpieczeństwa. Proces demona może zostać zrestartowany bez restartowania całego web-serwera Apache, prawdopodobnie czyniąc odświeżanie twojej bazy kodu bardziej płynnym. Porównaj dokumentację mod_wsgi, aby określić, który tryb będzie właściwy dla twojej konfiguracji. Upewnij się, że masz zainstalowanego Apache’a i aktywowany moduł mod_wsgi. Django będzie działać z każdą wersją Apache’a, która obsługuje mod_wsgi.

W Jak używać Django z mod_wsgi znajdziesz informacje jak skonfigurować mod_wsgi, kiedy masz je już zainstalowane.

Jeśli z jakiegoś powodu nie możesz użyć mod_wsgi, nie bój się: Django wspiera wiele innych możliwości deploymentu. Jedną z nich jest uWSGI; działa bardzo dobrze z nginx. Dodatkowo Django realizuje specyfikację WSGI (PEP 3333), co pozwala mu być uruchamianym na różnorodnych platformach serwerowych.

## Uruchamianie bazy danych

Jeśli planujesz użyć funkcjonalności API bazy danych Django, powinieneś upewnić się, że serwer bazy danych działa. Django wspiera wiele różnych serwerów baz danych i jest oficjalnie wspierane z bazami danych PostgreSQL, MariaDB, MySQL, Oracle i SQLite.

Jeśli rozwijasz mały projekt lub coś, czego nie planujesz uruchamiać w środowisku produkcyjnym, ogólnie najlepszym rozwiązaniem jest SQLite, jako że nie wymaga uruchamiania osobnego serwera. Jednakże SQLite bardzo różni się od innych baz danych, więc jeśli pracujesz nad czymś ważnym, zalecane jest pracować z tą samą bazą danych, którą planujesz użyć na produkcji.

Oprócz oficjalnie wspieranych baz danych, istnieją zewnętrzne backendy, które umożliwiają pracę z innymi bazami danych z Django.

To use another database other than SQLite, you’ll need to make sure that the appropriate Python database bindings are installed:

- If you’re using PostgreSQL, you’ll need the psycopg or psycopg2 package. Refer to the PostgreSQL notes for further details.

- Jeśli używasz MySQL-a lub MariaDB, potrzebujesz sterownika API bazy danych, takiego jak `mysqlclient`. W uwagach na temat backendu MySQL znajdziesz szczegóły.

- Jeśli używasz SQLite’a, być może przydzą ci się uwagi na temat backendu SQLite.

- If you’re using Oracle, you’ll need to install oracledb, but please read the notes for the Oracle backend for details regarding supported versions of both Oracle and `oracledb`.

- Jeśli używasz nieoficjalnego zewnętrznego backendu, prosimy powołaj się na dokumentację dostarczoną przez te zewnętrzne biblioteki.

And ensure that the following keys in the `'default'` item of the `DATABASES` dictionary match your database connection settings:

- `ENGINE` – Either `'django.db.backends.sqlite3'`, `'django.db.backends.postgresql'`, `'django.db.backends.mysql'`, or `'django.db.backends.oracle'`. Other backends are also available.

- `NAME` – The name of your database. If you’re using SQLite, the database will be a file on your computer. In that case, `NAME` should be the full absolute path, including the filename of that file. You don’t need to create anything beforehand; the database file will be created automatically when needed. The default value, `BASE_DIR / 'db.sqlite3'`, will store the file in your project directory.

For databases other than SQLite

If you are not using SQLite as your database, additional settings such as `USER`, `PASSWORD`, and `HOST` must be added. For more details, see the reference documentation for `DATABASES`.

Also, make sure that you’ve created the database by this point. Do that with „`CREATE DATABASE database_name;`” within your database’s interactive prompt.

Jeśli planujesz używać komendy `manage.py migrate` Django do automatycznego tworzenia tabel w bazie danych dla swoich modeli (po zainstalowaniu najpierw Django i stworzeniu projektu), musisz upewnić się, że Django ma uprawnienia do tworzenia i zmiany schematu tabel w bazie danych, którą używasz; jeśli planujesz ręcznie stworzyć tabele, możesz nadać Django uprawnienia `SELECT`, `INSERT`, `UPDATE` i `DELETE`. Po stworzeniu użytkownika bazy danych z tymi uprawnieniami, podasz szczegóły w pliku ustawień swojego projektu. Szczegóły znajdziesz w `DATABASES`.

Jeśli używasz frameworku testów Django, aby testować kwerendy do bazy danych, Django będzie potrzebować uprawnienia do stworzenia testowej bazy danych.

## Instalacja kodu Django

Instrukcje instalacji są nieco różne w zależności od tego, czy instalujesz pakiet dla dystrybucji, ściągasz najnowsze oficjalne wydanie, czy pobierasz najnowszą wersję deweloperską.

### Instalacja oficjalnego wydania za pomocą `pip`

Jest to rekomendowany sposób instalacji Django.

1. Zainstaluj pip. Najprostszym sposobem jest użycie samodzielnego instalatora pip. Jeśli twoja dystrybucja ma już zainstalowanego `pipa`, możesz potrzebować go zaktualizować, jeśli jest przestarzały. Zorientujesz się, jeśli jest przestarzały, bo instalacja nie zadziała.

2. Spójrz na venv. To narzędzie oferuje izolowane środowiska Pythona, które są bardziej praktyczne niż instalacja pakietów dla całego systemu. Pozwala ono także instalować pakiety bez uprawnień administratora. Tutorial kontrybucji przeprowadza przez stworzenie środowiska wirtualnego.

3. Po stworzeniu i aktywacji środowiska wirtualnego, wpisz komendę:

   / 

       $ python -m pip install Django

       ...\> py -m pip install Django

### Instalacja pakietu w dystrybucji

Sprawdź w uwagach do dystrybucji czy twoja platforma/dystrybucja dostarcza oficjalne pakiety lub instalatory Django. Pakiety dostarczane przez dystrybucje zazwyczaj pozwalają na automatyczną instalację zależności i wspierane ścieżki upgrade’ów. Jednakże rzadko zawierają najnowsze wydanie Django.

### Instalacja wersji deweloperskiej

Śledzenie rozwoju Django

Jeśli zdecydujesz się na używanie najnowszej deweloperskiej wersji Django, powinieneś poświęcać uwagę harmonogramowi dewelopmentu i mieć oko na informacje o nadchodzących wydaniach. Pomoże ci to być na bieżąco z nowymi funkcjami, których możesz chcieć użyć, jak i z jakimikolwiek zmianami, które powinieneś zrobić w swoim kodzie, aktualizując swoją kopię Django. (Dla stabilnych wydań wszystkie niezbędne zmiany są udokumentowane w informacjach o wydaniach.)

Jeśli chciałbyś móc aktualizować kod Django od czasu do czasu, z najnowszymi poprawkami błędów i nowymi funkcjami, postępuj zgodnie z instrukcją:

1. Upewnij się, że masz zainstalowanego Gita i że możesz uruchamiać jego komendy z powłoki. (Wpisz `git help` w linię komend, aby to sprawdzić.)

2. Pobierz główną gałąź dewelopmentu Django w ten sposób:

   / 

       $ git clone https://github.com/django/django.git

       ...\> git clone https://github.com/django/django.git

   W bieżącym katalogu powstanie katalog `django`.

3. Upewnij się, że interpreter Pythona może załadować kod Django. Najwygodniejszym sposobem na to jest użyć środowiska wirtualnego i pipa. Tutorial kontrybucji pokazuje, jak stworzyć wirtualne środowisko.

4. Po stworzeniu i aktywacji środowiska wirtualnego, uruchom następującą komendę:

   / 

       $ python -m pip install -e django/

       ...\> py -m pip install -e django\

   Spowoduje to, że kod Django będzie importowalny i komenda `django-admin` będzie dostępna. Innymi słowy wszystko gotowe!

Kiedy będziesz chciał zaktualizować swoją kopię kodu źródłowego Django, uruchom komendę `git pull` w katalogu `django`. Kiedy to zrobisz, Git pobierze wszystkie zmiany.