# Django 3.2.11.dev - 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 na Windowsie.

## 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.

W uzupełnieniu do backendu bazy danych, musisz upewnić się, że masz zainstalowane wiązania bazodanowe Pythona.

- Jeśli używasz PostgreSQL-a, będziesz potrzebował pakietu psycopg2. W uwagach na temat PostgreSQL-a znajdziesz więcej szczegółów.
- 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.
- Jeśli używasz Oracle’a, będziesz potrzebować kopii cx_Oracle, lecz prosimy przeczytaj uwagi na temat backendu Oracle, gdzie znajdziesz więcej szczegółów dotyczących wspieranych wersji zarówno Oracle’a jak i `cx_Oracle'a`.
- Jeśli używasz nieoficjalnego zewnętrznego backendu, prosimy powołaj się na dokumentację dostarczoną przez te zewnętrzne biblioteki.

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. Take a look at venv. This tool provides isolated Python environments, which are more practical than installing packages systemwide. It also allows installing packages without administrator privileges. The contributing tutorial walks through how to create a virtual environment.

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. Make sure that the Python interpreter can load Django’s code. The most convenient way to do this is to use a virtual environment and pip. The contributing tutorial walks through how to create a virtual environment.

4. After setting up and activating the virtual environment, run the following command:

   / 

       $ 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.