From 45e4a05401e6759a4eee2a7d27b34bdda311b203 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Fri, 3 Dec 2021 23:07:06 +0100 Subject: [PATCH 01/20] index.md translation --- docs/pl/docs/index.md | 313 +++++++++++++++++++++--------------------- 1 file changed, 154 insertions(+), 159 deletions(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 95fb7ae212518..445efff9a98c2 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -1,12 +1,8 @@ - -{!../../../docs/missing-translation.md!} - -

FastAPI

- FastAPI framework, high performance, easy to learn, fast to code, ready for production + FastAPI framework, szybka, prosta i gotowa do użycia w produkcji

@@ -22,31 +18,31 @@ --- -**Documentation**: https://fastapi.tiangolo.com +**Dokumentacja**: https://fastapi.tiangolo.com -**Source Code**: https://github.com/tiangolo/fastapi +**Kod żródłowy**: https://github.com/tiangolo/fastapi --- -FastAPI is a modern, fast (high-performance), web framework for building APIs with Python 3.6+ based on standard Python type hints. +FastAPI to nowoczesny, wydajny, framework sieciowy do budowania API używając Python 3.6+ bazujący na standardowym typowaniu Pythona. -The key features are: +Cechami kluczowymi są: -* **Fast**: Very high performance, on par with **NodeJS** and **Go** (thanks to Starlette and Pydantic). [One of the fastest Python frameworks available](#performance). +* **Wydajność**: FastApi jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (podziękowania dla Starlette i Pydantic). [Jedna z najszybszych frameworków Pythonowych dostępnych](#wydajność). -* **Fast to code**: Increase the speed to develop features by about 200% to 300%. * -* **Fewer bugs**: Reduce about 40% of human (developer) induced errors. * -* **Intuitive**: Great editor support. Completion everywhere. Less time debugging. -* **Easy**: Designed to be easy to use and learn. Less time reading docs. -* **Short**: Minimize code duplication. Multiple features from each parameter declaration. Fewer bugs. -* **Robust**: Get production-ready code. With automatic interactive documentation. -* **Standards-based**: Based on (and fully compatible with) the open standards for APIs: OpenAPI (previously known as Swagger) and JSON Schema. +* **Szybkość napisania**: Przyśpiesz czas pisania funkcji o około 200% do 300%. * +* **Mniejsza ilość błędów**: Zmniejsz błędy ludzkie (dewelopera) o około 40%. * +* **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. +* **Łatwość**: Zaprojektowana by być prosta i łatwa do nauczenia. Mniej czasu spędzanego na czytanie dokumentacji. +* **Krótkość**: Zmniejsz powtarzanie sie kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. +* **Solidność**: Kod może być stosowany w produkcji. Wraz z automatyczną interaktywną dokumentacją. +* **Bazowane na standardach**: Bazowane na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. -* estimation based on tests on an internal development team, building production applications. +* oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane w produkcji. -## Sponsors +## Sponsorzy - + {% if sponsors %} {% for sponsor in sponsors.gold -%} @@ -57,13 +53,13 @@ The key features are: {% endfor %} {% endif %} - + -Other sponsors +Inni sponsorzy -## Opinions +## Opinie -"_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._" +"_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._"

Kabir Khan - Microsoft (ref)
@@ -101,24 +97,24 @@ The key features are: --- -## **Typer**, the FastAPI of CLIs +## **Typer**, FastAPI aplikacji konsolowych -If you are building a CLI app to be used in the terminal instead of a web API, check out **Typer**. +Jeżeli tworzysz aplikacje CLI która ma być używana w terminalu zamiast API, sprawdź **Typer**. -**Typer** is FastAPI's little sibling. And it's intended to be the **FastAPI of CLIs**. ⌨️ 🚀 +**Typer** to młodsze rodzeństwo FastAPI. I jego przeznaczenie to bycie **FastAPI aplikacji konsolowych** . ⌨️ 🚀 -## Requirements +## Wymagania Python 3.6+ -FastAPI stands on the shoulders of giants: +FastAPI stoi na grzbiecie gigantów: -* Starlette for the web parts. -* Pydantic for the data parts. +* Starlette dla części sieciowych. +* Pydantic dla części obsługujących dane. -## Installation +## Instalacja
@@ -130,7 +126,7 @@ $ pip install fastapi
-You will also need an ASGI server, for production such as Uvicorn or Hypercorn. +Do produkcji będziesz potrzebował również serwera ASGI, takich jak Uvicorn albo Hypercorn.
@@ -142,11 +138,11 @@ $ pip install uvicorn[standard]
-## Example +## Przykład -### Create it +### Napisz -* Create a file `main.py` with: +* Stwórz plik o nazwie `main.py` z: ```Python from typing import Optional @@ -167,9 +163,9 @@ def read_item(item_id: int, q: Optional[str] = None): ```
-Or use async def... +Albo użyj async def... -If your code uses `async` / `await`, use `async def`: +Jeżeli twój kod korzysta z `async` / `await`, użyj `async def`: ```Python hl_lines="9 14" from typing import Optional @@ -189,15 +185,15 @@ async def read_item(item_id: int, q: Optional[str] = None): return {"item_id": item_id, "q": q} ``` -**Note**: +**Notatka**: -If you don't know, check the _"In a hurry?"_ section about `async` and `await` in the docs. +Jeżeli nie wiesz, sprawdz sekcje _"In a hurry?"_ (jeszcze nie przetłumaczone) o `async` i `await` w dokumentacji.
-### Run it +### Uruchom -Run the server with: +Uruchom serwer używając:
@@ -214,54 +210,53 @@ INFO: Application startup complete.
-About the command uvicorn main:app --reload... - -The command `uvicorn main:app` refers to: +O komendzie uvicorn main:app --reload... +Komenda `uvicorn main:app` nawiązuje do: -* `main`: the file `main.py` (the Python "module"). -* `app`: the object created inside of `main.py` with the line `app = FastAPI()`. -* `--reload`: make the server restart after code changes. Only do this for development. +* `main`: plik `main.py` ("moduł" w Pythonie). +* `app`: obiekt stworzony w `main.py` w lini `app = FastAPI()`. +* `--reload`: spraw by serwer resetował się po każdej zmianie w kodzie. Używaj tego tylko w środowisku deweloperskim.
-### Check it +### Wypróbuj -Open your browser at http://127.0.0.1:8000/items/5?q=somequery. +Otwórz link http://127.0.0.1:8000/items/5?q=somequery w przeglądarce. -You will see the JSON response as: +Zobaczysz taką odpowiedź JSON: ```JSON {"item_id": 5, "q": "somequery"} ``` -You already created an API that: +Właśnie stworzyłeś API które: -* Receives HTTP requests in the _paths_ `/` and `/items/{item_id}`. -* Both _paths_ take `GET` operations (also known as HTTP _methods_). -* The _path_ `/items/{item_id}` has a _path parameter_ `item_id` that should be an `int`. -* The _path_ `/items/{item_id}` has an optional `str` _query parameter_ `q`. +* Otrzymuje żądanie HTTP w _ścieżce_ `/` i `/items/{item_id}`. +* Obie _ścieżki_ używają operacji `GET` (znane także jako _metody_ HTTP). +* _Ścieżka_ `/items/{item_id}` ma _parametr ścieżki_ `item_id` który powinien być obiektem typu `int`. +* _Ścieżka_ `/items/{item_id}` ma opcjonalny _parametr zapytania_ typu `str` o nazwie `q`. -### Interactive API docs +### Interaktywna dokumentacja API -Now go to http://127.0.0.1:8000/docs. +Teraz wejdz na strone http://127.0.0.1:8000/docs. -You will see the automatic interactive API documentation (provided by Swagger UI): +Zobaczysz automatyczną interaktywną dokumentacje API (zrobiona z pomocą Swagger UI): ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-01-swagger-ui-simple.png) -### Alternative API docs +### Alternatywna dokumentacja API -And now, go to http://127.0.0.1:8000/redoc. +Teraz, wejdź na http://127.0.0.1:8000/redoc. -You will see the alternative automatic documentation (provided by ReDoc): +Zobaczysz alternatywną, lecz wciąż automatyczną dokumentacje (zrobiona z pomocą ReDoc): ![ReDoc](https://fastapi.tiangolo.com/img/index/index-02-redoc-simple.png) -## Example upgrade +## Aktualizacja przykładu -Now modify the file `main.py` to receive a body from a `PUT` request. +Teraz zmodyfikujemy plik `main.py` aby otrzmywał treść (body, w przykładzie nazwane `Item`) żądania `PUT`. -Declare the body using standard Python types, thanks to Pydantic. +Zadeklaruj treść żądania używając standardowych typów w Pythonie, zasługi dla Pydantic. ```Python hl_lines="4 9-12 25-27" from typing import Optional @@ -293,175 +288,175 @@ def update_item(item_id: int, item: Item): return {"item_name": item.name, "item_id": item_id} ``` -The server should reload automatically (because you added `--reload` to the `uvicorn` command above). +Serwer powinien odświeżyć automatycznie (ponieważ dodałeś `--reload` do komendy `uvicorn` powyżej). -### Interactive API docs upgrade +### Zaktualizowana interaktywna dokumentacja API -Now go to http://127.0.0.1:8000/docs. +Teraz wejdź na http://127.0.0.1:8000/docs. -* The interactive API documentation will be automatically updated, including the new body: +* Interaktywna dokumentacja API zaktualizuje sie automatycznie, wliczając nową treść żądania (body): ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-03-swagger-02.png) -* Click on the button "Try it out", it allows you to fill the parameters and directly interact with the API: +* Kliknij przycisk "Try it out" (wypróbuj), pozwoli to ci wypełnić parametry i bezpośrednio użyć API: ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-04-swagger-03.png) -* Then click on the "Execute" button, the user interface will communicate with your API, send the parameters, get the results and show them on the screen: +* Potem kliknij przycisk "Execute", interfejs użytkownika skontaktuje się z API, wyśle parametry, otrzyma odpowiedź i wyświetli ją na ekranie: ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-05-swagger-04.png) -### Alternative API docs upgrade +### Zaktualizowana interaktywna dokumentacja API -And now, go to http://127.0.0.1:8000/redoc. +Teraz, przejdź na http://127.0.0.1:8000/redoc. -* The alternative documentation will also reflect the new query parameter and body: +* Alternatywna dokumentacja również pokaże zaktualizowane parametry i treść żądania (body): ![ReDoc](https://fastapi.tiangolo.com/img/index/index-06-redoc-02.png) -### Recap +### Podsumowanie -In summary, you declare **once** the types of parameters, body, etc. as function parameters. +W podsumowaniu, musiałeś zadeklarować typy parametrów, treści żądania (body) itp. tylko **raz**, i są dostępne jako parametry w funkcji. -You do that with standard modern Python types. +Robisz to tak samo jak z standardowymi (na ten czas) typami w Pythonie. -You don't have to learn a new syntax, the methods or classes of a specific library, etc. +Nie musisz sie uczyć żadnej nowej składni, używać metod lub klas z specyficznych bibliotek, itp. -Just standard **Python 3.6+**. +Po prostu **Python 3.6+**. -For example, for an `int`: +Na przykład, dla danych typu `int`: ```Python item_id: int ``` -or for a more complex `Item` model: +albo dla bardziej złożonego obiektu `Item`: ```Python item: Item ``` -...and with that single declaration you get: +...i z pojedyńczą deklaracją otrzymujesz: -* Editor support, including: - * Completion. - * Type checks. -* Validation of data: - * Automatic and clear errors when the data is invalid. - * Validation even for deeply nested JSON objects. -* Conversion of input data: coming from the network to Python data and types. Reading from: +* Wsparcie edytorów kodu, wliczając: + * Auto-uzupełnianie. + * Sprawdzanie typów. +* Zatwierdzenie danych: + * Automatyczne i przejrzyste błędy gdy dane są niepoprawne. + * Walidacja nawet dla głęboko zagnieżdżonych obiektów JSON. +* Konwersja danych wejściowych: przychodzących z sieci na Pythonowe typy. Pozwala na przetwarzanie danych: * JSON. - * Path parameters. - * Query parameters. - * Cookies. - * Headers. - * Forms. - * Files. -* Conversion of output data: converting from Python data and types to network data (as JSON): - * Convert Python types (`str`, `int`, `float`, `bool`, `list`, etc). - * `datetime` objects. - * `UUID` objects. - * Database models. - * ...and many more. -* Automatic interactive API documentation, including 2 alternative user interfaces: + * Parametrów ścieżki. + * Parametrów zapytania. + * Dane cookies. + * Dane headers. + * Formularze. + * Pliki. +* Konwersja danych wyjściowych: wychodzących z Pythona do sieci (jako JSON): + * Przetwarzanie Pythonowych typów (`str`, `int`, `float`, `bool`, `list`, itp). + * Obiekty `datetime`. + * Obiekty `UUID`. + * Modele baz danych. + * ...i wiele więcej. +* Automatyczne interaktywne dokumentacje API, wliczając 2 alternatywne interfejsy użytkownika: * Swagger UI. * ReDoc. --- -Coming back to the previous code example, **FastAPI** will: - -* Validate that there is an `item_id` in the path for `GET` and `PUT` requests. -* Validate that the `item_id` is of type `int` for `GET` and `PUT` requests. - * If it is not, the client will see a useful, clear error. -* Check if there is an optional query parameter named `q` (as in `http://127.0.0.1:8000/items/foo?q=somequery`) for `GET` requests. - * As the `q` parameter is declared with `= None`, it is optional. - * Without the `None` it would be required (as is the body in the case with `PUT`). -* For `PUT` requests to `/items/{item_id}`, Read the body as JSON: - * Check that it has a required attribute `name` that should be a `str`. - * Check that it has a required attribute `price` that has to be a `float`. - * Check that it has an optional attribute `is_offer`, that should be a `bool`, if present. - * All this would also work for deeply nested JSON objects. -* Convert from and to JSON automatically. -* Document everything with OpenAPI, that can be used by: - * Interactive documentation systems. - * Automatic client code generation systems, for many languages. -* Provide 2 interactive documentation web interfaces directly. +Wracając do poprzedniego przykładu, **FastAPI** : + +* Potwierdzi że w ścieżce jest `item_id` dla żądań `GET` i `PUT`. +* Potwierdzi że `item_id` jest typu `int` dla żądań `GET` i `PUT`. + * Jeżeli nie jest, odbiorca zobaczy przydatną, przejrzystą wiadomość z błędem. +* Sprawdzi czy w ścieżce jesst opcjonalny parametr zapytania `q` (np. `http://127.0.0.1:8000/items/foo?q=somequery`) dla żądania `GET`. + * Jako że parametr `q` jest zadeklarowany jako `= None`, jest on opcjonalny. + * Gdyby tego `None` nie było, parametr ten byłby wymagany (tak jak treść żądania w żądaniu `PUT`). +* Dla żądania `PUT` z ścieżką `/items/{item_id}`, odczyta treść żądania jako JSON: + * Sprawdzi czy posiada wymagany atrybut `name` który powinien być typu `str`. + * Sprawdzi czy posiada wymagany atrybut `price` który musi być `float`. + * Sprawdzi czy posiada opcjonalny atrybut `is_offer`, który (jeżeli obecny) powinien być typu `bool`. + * To wszystko powinno również działać dla głęboko zagnieżdżonych obiektów JSON. +* Konwersuje z i do JSON automatycznie. +* Dokumentuje wszystko z OpenAPI, które może być używane przez: + * Interaktywne systemy dokumentacji. + * Systemy automatycznego generowania kodu klientowego, dla wielu języków. +* Dostarczy bezpośrednio 2 interaktywne dokumentacje sieciowe. --- -We just scratched the surface, but you already get the idea of how it all works. +To dopiero początek, ale już masz mniejwięcej pojęcie jak to wszystko działa. -Try changing the line with: +Spróbuj zmienić linijkę: ```Python return {"item_name": item.name, "item_id": item_id} ``` -...from: +...z: ```Python ... "item_name": item.name ... ``` -...to: +...na: ```Python ... "item_price": item.price ... ``` -...and see how your editor will auto-complete the attributes and know their types: +...i zobacz jak edytor kodu automatycznie uzupełni atrybuty i będzie znał ich typy: ![editor support](https://fastapi.tiangolo.com/img/vscode-completion.png) -For a more complete example including more features, see the Tutorial - User Guide. +Dla bardziej kompletnych przykładów posiadających więcej funkcji, zobacz Tutorial - User Guide (jeszcze nieprzetłumaczone). -**Spoiler alert**: the tutorial - user guide includes: +**Uwaga Spoiler**: the tutorial - user guide zawiera: -* Declaration of **parameters** from other different places as: **headers**, **cookies**, **form fields** and **files**. -* How to set **validation constraints** as `maximum_length` or `regex`. -* A very powerful and easy to use **Dependency Injection** system. -* Security and authentication, including support for **OAuth2** with **JWT tokens** and **HTTP Basic** auth. -* More advanced (but equally easy) techniques for declaring **deeply nested JSON models** (thanks to Pydantic). -* Many extra features (thanks to Starlette) as: - * **WebSockets** +* Deklaracje **parametrów** z innych miejsc takich jak: **headery**, **pliki cookies**, **formularze** i **pliki**. +* Jak ustawić **ograniczenia walidacyjne** takie jak `maksymalna długość` lub `regex`. +* Potężny i łatwy w użyciu system **Dependency Injection**. +* Zabezpieczenia i autoryzacja, wliczając wsparcie dla **OAuth2** z **tokenami JWT** oraz autoryzacją **HTTP Basic**. +* Bardziej zaawansowane (ale równie proste) techniki deklarowania **głęboko zagnieżdżonych modeli JSON** (podziękowania dla Pydantic). +* Wiele dodatkowych funkcji (podziękowania dla Starlette) takie jak: + * **WebSockety** * **GraphQL** - * extremely easy tests based on `requests` and `pytest` + * bardzo proste testy bazujące na `requests` oraz `pytest` * **CORS** - * **Cookie Sessions** - * ...and more. + * **Sesje cookie** + * ...i więcej. -## Performance +## Wydajność -Independent TechEmpower benchmarks show **FastAPI** applications running under Uvicorn as one of the fastest Python frameworks available, only below Starlette and Uvicorn themselves (used internally by FastAPI). (*) +Niezależne benchmarki TechEmpower pokazują że **FastAPI** (pod Uvicornem) jest jednym z najszybszych Pythonowych frameworków dostępnych, znajduje się tylko pod samymi Starlette i Uvicorn (używanymi wewnątrz FastAPI). (*) -To understand more about it, see the section Benchmarks. +Aby dowiedzieć się o tym więcej, zobacz sekcje Benchmarks (jeszcze nieprzetłumaczone). -## Optional Dependencies +## Opcjonalne zależności -Used by Pydantic: +Używane przez Pydantic: -* ujson - for faster JSON "parsing". -* email_validator - for email validation. +* ujson - dla szybszego "parsowania" danych JSON. +* email_validator - dla walidacji adresów email. -Used by Starlette: +Używane przez Starlette: -* requests - Required if you want to use the `TestClient`. -* aiofiles - Required if you want to use `FileResponse` or `StaticFiles`. -* jinja2 - Required if you want to use the default template configuration. -* python-multipart - Required if you want to support form "parsing", with `request.form()`. -* itsdangerous - Required for `SessionMiddleware` support. -* pyyaml - Required for Starlette's `SchemaGenerator` support (you probably don't need it with FastAPI). -* graphene - Required for `GraphQLApp` support. -* ujson - Required if you want to use `UJSONResponse`. +* requests - Wymagane jeżeli chcesz korzystać z `TestClient`. +* aiofiles - Wymagane jeżeli chcesz korzystać z `FileResponse` albo `StaticFiles`. +* jinja2 - Wymagane jeżeli chcesz używać domyślnych szablonów konfiguracji. +* python-multipart - Wymagane jeżelich chcesz wsparcie "parsowania" formularzy, używając `request.form()`. +* itsdangerous - Wymagany dla wsparcia `SessionMiddleware`. +* pyyaml - Wymagane dla wsparcia `SchemaGenerator` do Starlette (z FastAPI prawdopodobnie tego nie potrzebujesz). +* graphene - Wymagane dla wsparcia `GraphQLApp`. +* ujson - Wymagane jeżeli chcesz korzystać z `UJSONResponse`. -Used by FastAPI / Starlette: +Używane przez FastAPI / Starlette: -* uvicorn - for the server that loads and serves your application. -* orjson - Required if you want to use `ORJSONResponse`. +* uvicorn - dla serwera który ładuje i obsługuje twoją aplikacje. +* orjson - Wymagane jeżeli chcesz używać `ORJSONResponse`. -You can install all of these with `pip install fastapi[all]`. +Możesz zainstalować wszystkie te aplikacje przy pomocy `pip install fastapi[all]`. -## License +## Licencja -This project is licensed under the terms of the MIT license. +Ten projekt jest pod licencją MIT. From 76eff307d5a3421c65f2faa1c6465b91b5de4df9 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:00:24 +0000 Subject: [PATCH 02/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 445efff9a98c2..163bca99c7073 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -418,7 +418,7 @@ Dla bardziej kompletnych przykładów posiadających więcej funkcji, zobacz Dependency Injection**. * Zabezpieczenia i autoryzacja, wliczając wsparcie dla **OAuth2** z **tokenami JWT** oraz autoryzacją **HTTP Basic**. * Bardziej zaawansowane (ale równie proste) techniki deklarowania **głęboko zagnieżdżonych modeli JSON** (podziękowania dla Pydantic). -* Wiele dodatkowych funkcji (podziękowania dla Starlette) takie jak: +* Wiele dodatkowych funkcji (dzięki Starlette) takie jak: * **WebSockety** * **GraphQL** * bardzo proste testy bazujące na `requests` oraz `pytest` From c660713a3f862c97979bc747015aac3297789aa4 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:00:45 +0000 Subject: [PATCH 03/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 163bca99c7073..6f988f76acb48 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -256,7 +256,7 @@ Zobaczysz alternatywną, lecz wciąż automatyczną dokumentacje (zrobiona z pom Teraz zmodyfikujemy plik `main.py` aby otrzmywał treść (body, w przykładzie nazwane `Item`) żądania `PUT`. -Zadeklaruj treść żądania używając standardowych typów w Pythonie, zasługi dla Pydantic. +Zadeklaruj treść żądania, używając standardowych typów w Pythonie dzięki Pydantic. ```Python hl_lines="4 9-12 25-27" from typing import Optional From ac12bca3b859726660d717ff3f45dd3e4f7bcc65 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:00:50 +0000 Subject: [PATCH 04/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 6f988f76acb48..fd3c67ce4622f 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -385,7 +385,7 @@ Wracając do poprzedniego przykładu, **FastAPI** : --- -To dopiero początek, ale już masz mniejwięcej pojęcie jak to wszystko działa. +To dopiero początek, ale już masz mniej-więcej pojęcie jak to wszystko działa. Spróbuj zmienić linijkę: From 50a5cb8bb530b5340256af9d7d992b787790086c Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:00:58 +0000 Subject: [PATCH 05/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index fd3c67ce4622f..30e0eaaef33cf 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -238,7 +238,7 @@ Właśnie stworzyłeś API które: ### Interaktywna dokumentacja API -Teraz wejdz na strone http://127.0.0.1:8000/docs. +Teraz wejdź na strone http://127.0.0.1:8000/docs. Zobaczysz automatyczną interaktywną dokumentacje API (zrobiona z pomocą Swagger UI): From b514bdb901ef3587cd268e1b5b9505a847a4c040 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:01:03 +0000 Subject: [PATCH 06/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 30e0eaaef33cf..438ed460f1b3c 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -140,7 +140,7 @@ $ pip install uvicorn[standard] ## Przykład -### Napisz +### Stwórz * Stwórz plik o nazwie `main.py` z: From 22715a5a7607cb07384cc8619ed2323d3f67e4e4 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:01:13 +0000 Subject: [PATCH 07/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 438ed460f1b3c..13d8864fd4d24 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -34,7 +34,7 @@ Cechami kluczowymi są: * **Mniejsza ilość błędów**: Zmniejsz błędy ludzkie (dewelopera) o około 40%. * * **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. * **Łatwość**: Zaprojektowana by być prosta i łatwa do nauczenia. Mniej czasu spędzanego na czytanie dokumentacji. -* **Krótkość**: Zmniejsz powtarzanie sie kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. +* **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. * **Solidność**: Kod może być stosowany w produkcji. Wraz z automatyczną interaktywną dokumentacją. * **Bazowane na standardach**: Bazowane na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. From 7a5bb5f520483f277e947f3f7acf7466282b2ead Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:01:21 +0000 Subject: [PATCH 08/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 13d8864fd4d24..cc38e739774f5 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -33,7 +33,7 @@ Cechami kluczowymi są: * **Szybkość napisania**: Przyśpiesz czas pisania funkcji o około 200% do 300%. * * **Mniejsza ilość błędów**: Zmniejsz błędy ludzkie (dewelopera) o około 40%. * * **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. -* **Łatwość**: Zaprojektowana by być prosta i łatwa do nauczenia. Mniej czasu spędzanego na czytanie dokumentacji. +* **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzaj na czytanie dokumentacji. * **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. * **Solidność**: Kod może być stosowany w produkcji. Wraz z automatyczną interaktywną dokumentacją. * **Bazowane na standardach**: Bazowane na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. From d9aaa521d8484c211b382d0c4c17567c1c80d95e Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:02:33 +0000 Subject: [PATCH 09/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index cc38e739774f5..a9020a5adc4e2 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -109,7 +109,7 @@ Jeżeli tworzysz aplikacje CLI< Python 3.6+ -FastAPI stoi na grzbiecie gigantów: +FastAPI stoi na ramionach olbrzymów: * Starlette dla części sieciowych. * Pydantic dla części obsługujących dane. From 2aa67d91ea1621154f0e00edd8eb4350695ceeb1 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:02:58 +0000 Subject: [PATCH 10/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index a9020a5adc4e2..27f9c2fdb859b 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -31,7 +31,7 @@ Cechami kluczowymi są: * **Wydajność**: FastApi jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (podziękowania dla Starlette i Pydantic). [Jedna z najszybszych frameworków Pythonowych dostępnych](#wydajność). * **Szybkość napisania**: Przyśpiesz czas pisania funkcji o około 200% do 300%. * -* **Mniejsza ilość błędów**: Zmniejsz błędy ludzkie (dewelopera) o około 40%. * +* **Mniejsza ilość błędów**: Zmniejsz ludzkie (dewelopera) błędy o około 40%. * * **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. * **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzaj na czytanie dokumentacji. * **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. From 86da82e0ca461a0508f078f3a540501f96bd9eec Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:03:03 +0000 Subject: [PATCH 11/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 27f9c2fdb859b..f172b1af917a4 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -28,7 +28,7 @@ FastAPI to nowoczesny, wydajny, framework sieciowy do budowania API używając P Cechami kluczowymi są: -* **Wydajność**: FastApi jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (podziękowania dla Starlette i Pydantic). [Jedna z najszybszych frameworków Pythonowych dostępnych](#wydajność). +* **Wydajność**: FastApi jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (podziękowania dla Starlette i Pydantic). [Jeden z najszybszych dostępnych frameworków Pythonowych ](#wydajność). * **Szybkość napisania**: Przyśpiesz czas pisania funkcji o około 200% do 300%. * * **Mniejsza ilość błędów**: Zmniejsz ludzkie (dewelopera) błędy o około 40%. * From c60965dc41852d40a59936479337cc164e5b0991 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:03:09 +0000 Subject: [PATCH 12/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index f172b1af917a4..17353a7be90ea 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -2,7 +2,7 @@ FastAPI

- FastAPI framework, szybka, prosta i gotowa do użycia w produkcji + FastAPI to szybki, prosty i gotowy do użycia w produkcji framework

From 54a8733c8088790cc3d5f7694f6be13d3bd952ca Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:03:14 +0000 Subject: [PATCH 13/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 17353a7be90ea..9abe02d0b88bd 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -24,7 +24,7 @@ --- -FastAPI to nowoczesny, wydajny, framework sieciowy do budowania API używając Python 3.6+ bazujący na standardowym typowaniu Pythona. +FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący na standardowym typowaniu Pythona. Cechami kluczowymi są: From 685a101814c8cfb3bcc3308a5a01a814ba38f0b7 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:03:20 +0000 Subject: [PATCH 14/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 9abe02d0b88bd..6abc7ecb9cc33 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -35,7 +35,7 @@ Cechami kluczowymi są: * **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. * **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzaj na czytanie dokumentacji. * **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. -* **Solidność**: Kod może być stosowany w produkcji. Wraz z automatyczną interaktywną dokumentacją. +* **Solidność**: Kod gotowy do środowiska produkyjnego. Wraz z automatyczną interaktywną dokumentacją. * **Bazowane na standardach**: Bazowane na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. * oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane w produkcji. From 7f3f07db2bcdb415efa35c3f14eaaa437468d1e3 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:03:28 +0000 Subject: [PATCH 15/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 6abc7ecb9cc33..0887e69b8fa95 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -36,7 +36,7 @@ Cechami kluczowymi są: * **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzaj na czytanie dokumentacji. * **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. * **Solidność**: Kod gotowy do środowiska produkyjnego. Wraz z automatyczną interaktywną dokumentacją. -* **Bazowane na standardach**: Bazowane na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. +* **Oparte na standardach**: Oparte na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. * oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane w produkcji. From f8dcc7ae2fea64d46907009251fc9a02c3a78ce2 Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Wed, 8 Dec 2021 16:04:03 +0000 Subject: [PATCH 16/20] Update docs/pl/docs/index.md Co-authored-by: Dawid Dutkiewicz --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 0887e69b8fa95..7542c986fe6fa 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -38,7 +38,7 @@ Cechami kluczowymi są: * **Solidność**: Kod gotowy do środowiska produkyjnego. Wraz z automatyczną interaktywną dokumentacją. * **Oparte na standardach**: Oparte na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. -* oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane w produkcji. +* oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane na środowisku produkcyjnym. ## Sponsorzy From f6159a82a04ecc0b93876452a9dc74b48f685a6a Mon Sep 17 00:00:00 2001 From: Bart Skowron Date: Mon, 20 Dec 2021 02:16:47 +0100 Subject: [PATCH 17/20] Update PL translation --- docs/pl/docs/index.md | 131 +++++++++++++++++++++--------------------- 1 file changed, 65 insertions(+), 66 deletions(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 7542c986fe6fa..83a3caf1915cd 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -2,7 +2,7 @@ FastAPI

- FastAPI to szybki, prosty i gotowy do użycia w produkcji framework + FastAPI to szybki, prosty w nauce i gotowy do użycia w produkcji framework

@@ -26,23 +26,22 @@ FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący na standardowym typowaniu Pythona. -Cechami kluczowymi są: +Kluczowe cechy: -* **Wydajność**: FastApi jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (podziękowania dla Starlette i Pydantic). [Jeden z najszybszych dostępnych frameworków Pythonowych ](#wydajność). +* **Wydajność**: FastAPI jest bardzo wydajny, na równi z **NodeJS** oraz **Go** (dzięki Starlette i Pydantic). [Jeden z najszybszych dostępnych frameworków Pythonowych](#wydajnosc). +* **Szybkość kodowania**: Przyśpiesza szybkość pisania nowych funkcjonalności o około 200% do 300%. * +* **Mniejsza ilość błędów**: Zmniejsza ilość ludzkich (dewelopera) błędy o około 40%. * +* **Intuicyjność**: Wspaniałe wsparcie dla edytorów kodu. Dostępne wszędzie automatyczne uzupełnianie kodu. Krótszy czas debugowania. +* **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzonego na czytanie dokumentacji. +* **Kompaktowość**: Minimalizacja powtarzającego się kodu. Wiele funkcjonalności dla każdej deklaracji parametru. Mniej błędów. +* **Solidność**: Kod gotowy dla środowiska produkcyjnego. Wraz z automatyczną interaktywną dokumentacją. +* **Bazujący na standardach**: Oparty na (i w pełni kompatybilny z) otwartych standardach API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. -* **Szybkość napisania**: Przyśpiesz czas pisania funkcji o około 200% do 300%. * -* **Mniejsza ilość błędów**: Zmniejsz ludzkie (dewelopera) błędy o około 40%. * -* **Intuicyjność**: Wspaniałe wsparcie przez edytory kodu. Wszędzie automatyczne uzupełnianie. Mniejszy czas debugowania. -* **Łatwość**: Zaprojektowany by być prosty i łatwy do nauczenia. Mniej czasu spędzaj na czytanie dokumentacji. -* **Krótkość**: Zmniejsz powtarzanie się kodu. Dla każdego parametru można dać wiele funkcji. Mniej błędów. -* **Solidność**: Kod gotowy do środowiska produkyjnego. Wraz z automatyczną interaktywną dokumentacją. -* **Oparte na standardach**: Oparte na (i w pełni kompatybilne z) otwartymi standardami w API: OpenAPI (wcześniej znane jako Swagger) oraz JSON Schema. - -* oszacowania bazowane na testach przez wewnętrzny zespół deweloperów, budujących aplikacie używane na środowisku produkcyjnym. +* oszacowania bazowane na testach wykonanych przez wewnętrzny zespół deweloperów, budujących aplikacie używane na środowisku produkcyjnym. ## Sponsorzy - + {% if sponsors %} {% for sponsor in sponsors.gold -%} @@ -53,13 +52,13 @@ Cechami kluczowymi są: {% endfor %} {% endif %} - + Inni sponsorzy ## Opinie -"_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._" +"_[...] I'm using **FastAPI** a ton these days. [...] I'm actually planning to use it for all of my team's **ML services at Microsoft**. Some of them are getting integrated into the core **Windows** product and some **Office** products._"

Kabir Khan - Microsoft (ref)
@@ -101,17 +100,17 @@ Cechami kluczowymi są: -Jeżeli tworzysz aplikacje CLI która ma być używana w terminalu zamiast API, sprawdź **Typer**. +Jeżeli tworzysz aplikacje CLI, która ma być używana w terminalu zamiast API, sprawdź **Typer**. -**Typer** to młodsze rodzeństwo FastAPI. I jego przeznaczenie to bycie **FastAPI aplikacji konsolowych** . ⌨️ 🚀 +**Typer** to młodsze rodzeństwo FastAPI. Jego celem jest pozostanie **FastAPI aplikacji konsolowych** . ⌨️ 🚀 ## Wymagania Python 3.6+ -FastAPI stoi na ramionach olbrzymów: +FastAPI oparty jest na: -* Starlette dla części sieciowych. +* Starlette dla części webowej. * Pydantic dla części obsługujących dane. ## Instalacja @@ -126,7 +125,7 @@ $ pip install fastapi -Do produkcji będziesz potrzebował również serwera ASGI, takich jak Uvicorn albo Hypercorn. +Na serwerze produkcyjnym będziez także potrzebował serwera ASGI, np. Uvicorn lub Hypercorn.
@@ -142,7 +141,7 @@ $ pip install uvicorn[standard] ### Stwórz -* Stwórz plik o nazwie `main.py` z: +* Utwórz plik o nazwie `main.py` z: ```Python from typing import Optional @@ -185,9 +184,9 @@ async def read_item(item_id: int, q: Optional[str] = None): return {"item_id": item_id, "q": q} ``` -**Notatka**: +**Przypis**: -Jeżeli nie wiesz, sprawdz sekcje _"In a hurry?"_ (jeszcze nie przetłumaczone) o `async` i `await` w dokumentacji. +Jeżeli nie znasz, sprawdź sekcję _"In a hurry?"_ o `async` i `await` w dokumentacji. @@ -211,7 +210,7 @@ INFO: Application startup complete.
O komendzie uvicorn main:app --reload... -Komenda `uvicorn main:app` nawiązuje do: +Komenda `uvicorn main:app` odnosi się do: * `main`: plik `main.py` ("moduł" w Pythonie). * `app`: obiekt stworzony w `main.py` w lini `app = FastAPI()`. @@ -223,7 +222,7 @@ Komenda `uvicorn main:app` nawiązuje do: Otwórz link http://127.0.0.1:8000/items/5?q=somequery w przeglądarce. -Zobaczysz taką odpowiedź JSON: +Zobaczysz następującą odpowiedź JSON: ```JSON {"item_id": 5, "q": "somequery"} @@ -231,30 +230,30 @@ Zobaczysz taką odpowiedź JSON: Właśnie stworzyłeś API które: -* Otrzymuje żądanie HTTP w _ścieżce_ `/` i `/items/{item_id}`. +* Otrzymuje żądania HTTP w _ścieżce_ `/` i `/items/{item_id}`. * Obie _ścieżki_ używają operacji `GET` (znane także jako _metody_ HTTP). * _Ścieżka_ `/items/{item_id}` ma _parametr ścieżki_ `item_id` który powinien być obiektem typu `int`. * _Ścieżka_ `/items/{item_id}` ma opcjonalny _parametr zapytania_ typu `str` o nazwie `q`. ### Interaktywna dokumentacja API -Teraz wejdź na strone http://127.0.0.1:8000/docs. +Otwórz teraz stronę http://127.0.0.1:8000/docs. -Zobaczysz automatyczną interaktywną dokumentacje API (zrobiona z pomocą Swagger UI): +Zobaczysz automatyczną interaktywną dokumentację API (dostarczoną z pomocą Swagger UI): ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-01-swagger-ui-simple.png) ### Alternatywna dokumentacja API -Teraz, wejdź na http://127.0.0.1:8000/redoc. +Otwórz teraz http://127.0.0.1:8000/redoc. -Zobaczysz alternatywną, lecz wciąż automatyczną dokumentacje (zrobiona z pomocą ReDoc): +Zobaczysz alternatywną, lecz wciąż automatyczną dokumentację (wygenerowaną z pomocą ReDoc): ![ReDoc](https://fastapi.tiangolo.com/img/index/index-02-redoc-simple.png) ## Aktualizacja przykładu -Teraz zmodyfikujemy plik `main.py` aby otrzmywał treść (body, w przykładzie nazwane `Item`) żądania `PUT`. +Zmodyfikuj teraz plik `main.py`, aby otrzmywał treść (body) żądania `PUT`. Zadeklaruj treść żądania, używając standardowych typów w Pythonie dzięki Pydantic. @@ -288,27 +287,27 @@ def update_item(item_id: int, item: Item): return {"item_name": item.name, "item_id": item_id} ``` -Serwer powinien odświeżyć automatycznie (ponieważ dodałeś `--reload` do komendy `uvicorn` powyżej). +Serwer powinien przeładować się automatycznie (ponieważ dodałeś `--reload` do komendy `uvicorn` powyżej). ### Zaktualizowana interaktywna dokumentacja API -Teraz wejdź na http://127.0.0.1:8000/docs. +Wejdź teraz na http://127.0.0.1:8000/docs. -* Interaktywna dokumentacja API zaktualizuje sie automatycznie, wliczając nową treść żądania (body): +* Interaktywna dokumentacja API zaktualizuje sie automatycznie, także z nową treścią żądania (body): ![Swagger UI](https://fastapi.tiangolo.com/img/index/index-03-swagger-02.png) -* Kliknij przycisk "Try it out" (wypróbuj), pozwoli to ci wypełnić parametry i bezpośrednio użyć API: +* Kliknij przycisk "Try it out" (wypróbuj), pozwoli Ci to wypełnić parametry i bezpośrednio użyć API: ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-04-swagger-03.png) -* Potem kliknij przycisk "Execute", interfejs użytkownika skontaktuje się z API, wyśle parametry, otrzyma odpowiedź i wyświetli ją na ekranie: +* Kliknij potem przycisk "Execute" (wykonaj), interfejs użytkownika połączy się z API, wyśle parametry, otrzyma odpowiedź i wyświetli ją na ekranie: ![Swagger UI interaction](https://fastapi.tiangolo.com/img/index/index-05-swagger-04.png) -### Zaktualizowana interaktywna dokumentacja API +### Zaktualizowana alternatywna dokumentacja API -Teraz, przejdź na http://127.0.0.1:8000/redoc. +Otwórz teraz http://127.0.0.1:8000/redoc. * Alternatywna dokumentacja również pokaże zaktualizowane parametry i treść żądania (body): @@ -316,13 +315,13 @@ Teraz, przejdź na Konwersja danych wejściowych: przychodzących z sieci na Pythonowe typy. Pozwala na przetwarzanie danych: @@ -349,7 +348,7 @@ item: Item * Parametrów ścieżki. * Parametrów zapytania. * Dane cookies. - * Dane headers. + * Dane nagłówków (headers). * Formularze. * Pliki. * Konwersja danych wyjściowych: wychodzących z Pythona do sieci (jako JSON): @@ -366,22 +365,22 @@ item: Item Wracając do poprzedniego przykładu, **FastAPI** : -* Potwierdzi że w ścieżce jest `item_id` dla żądań `GET` i `PUT`. -* Potwierdzi że `item_id` jest typu `int` dla żądań `GET` i `PUT`. +* Potwierdzi, że w ścieżce jest `item_id` dla żądań `GET` i `PUT`. +* Potwierdzi, że `item_id` jest typu `int` dla żądań `GET` i `PUT`. * Jeżeli nie jest, odbiorca zobaczy przydatną, przejrzystą wiadomość z błędem. -* Sprawdzi czy w ścieżce jesst opcjonalny parametr zapytania `q` (np. `http://127.0.0.1:8000/items/foo?q=somequery`) dla żądania `GET`. +* Sprawdzi czy w ścieżce jest opcjonalny parametr zapytania `q` (np. `http://127.0.0.1:8000/items/foo?q=somequery`) dla żądania `GET`. * Jako że parametr `q` jest zadeklarowany jako `= None`, jest on opcjonalny. * Gdyby tego `None` nie było, parametr ten byłby wymagany (tak jak treść żądania w żądaniu `PUT`). * Dla żądania `PUT` z ścieżką `/items/{item_id}`, odczyta treść żądania jako JSON: - * Sprawdzi czy posiada wymagany atrybut `name` który powinien być typu `str`. - * Sprawdzi czy posiada wymagany atrybut `price` który musi być `float`. + * Sprawdzi czy posiada wymagany atrybut `name`, który powinien być typu `str`. + * Sprawdzi czy posiada wymagany atrybut `price`, który musi być typu `float`. * Sprawdzi czy posiada opcjonalny atrybut `is_offer`, który (jeżeli obecny) powinien być typu `bool`. - * To wszystko powinno również działać dla głęboko zagnieżdżonych obiektów JSON. -* Konwersuje z i do JSON automatycznie. -* Dokumentuje wszystko z OpenAPI, które może być używane przez: + * To wszystko będzie również działać dla głęboko zagnieżdżonych obiektów JSON. +* Automatycznie konwertuje z i do JSON. +* Dokumentuje wszystko w OpenAPI, które może być używane przez: * Interaktywne systemy dokumentacji. - * Systemy automatycznego generowania kodu klientowego, dla wielu języków. -* Dostarczy bezpośrednio 2 interaktywne dokumentacje sieciowe. + * Systemy automatycznego generowania kodu klienckiego, dla wielu języków. +* Dostarczy bezpośrednio 2 interaktywne dokumentacje webowe. --- @@ -409,15 +408,15 @@ Spróbuj zmienić linijkę: ![editor support](https://fastapi.tiangolo.com/img/vscode-completion.png) -Dla bardziej kompletnych przykładów posiadających więcej funkcji, zobacz Tutorial - User Guide (jeszcze nieprzetłumaczone). +Dla bardziej kompletnych przykładów posiadających więcej funkcjonalności, zobacz Tutorial - User Guide. -**Uwaga Spoiler**: the tutorial - user guide zawiera: +**Uwaga Spoiler**: tutorial - user guide zawiera: -* Deklaracje **parametrów** z innych miejsc takich jak: **headery**, **pliki cookies**, **formularze** i **pliki**. +* Deklaracje **parametrów** z innych miejsc takich jak: **nagłówki**, **pliki cookies**, **formularze** i **pliki**. * Jak ustawić **ograniczenia walidacyjne** takie jak `maksymalna długość` lub `regex`. * Potężny i łatwy w użyciu system **Dependency Injection**. -* Zabezpieczenia i autoryzacja, wliczając wsparcie dla **OAuth2** z **tokenami JWT** oraz autoryzacją **HTTP Basic**. -* Bardziej zaawansowane (ale równie proste) techniki deklarowania **głęboko zagnieżdżonych modeli JSON** (podziękowania dla Pydantic). +* Zabezpieczenia i autentykacja, wliczając wsparcie dla **OAuth2** z **tokenami JWT** oraz autoryzacją **HTTP Basic**. +* Bardziej zaawansowane (ale równie proste) techniki deklarowania **głęboko zagnieżdżonych modeli JSON** (dzięki Pydantic). * Wiele dodatkowych funkcji (dzięki Starlette) takie jak: * **WebSockety** * **GraphQL** @@ -428,35 +427,35 @@ Dla bardziej kompletnych przykładów posiadających więcej funkcji, zobacz jest jednym z najszybszych Pythonowych frameworków dostępnych, znajduje się tylko pod samymi Starlette i Uvicorn (używanymi wewnątrz FastAPI). (*) +Niezależne benchmarki TechEmpower pokazują, że **FastAPI** (uruchomiony na serwerze Uvicorn) jest jednym z najszybszych dostępnych Pythonowych frameworków, zaraz po Starlette i Uvicorn (używanymi wewnątrznie przez FastAPI). (*) -Aby dowiedzieć się o tym więcej, zobacz sekcje Benchmarks (jeszcze nieprzetłumaczone). +Aby dowiedzieć się o tym więcej, zobacz sekcję Benchmarks. ## Opcjonalne zależności Używane przez Pydantic: -* ujson - dla szybszego "parsowania" danych JSON. +* ujson - dla szybszego "parsowania" danych JSON. * email_validator - dla walidacji adresów email. Używane przez Starlette: * requests - Wymagane jeżeli chcesz korzystać z `TestClient`. * aiofiles - Wymagane jeżeli chcesz korzystać z `FileResponse` albo `StaticFiles`. -* jinja2 - Wymagane jeżeli chcesz używać domyślnych szablonów konfiguracji. +* jinja2 - Wymagane jeżeli chcesz używać domyślnej konfiguracji szablonów. * python-multipart - Wymagane jeżelich chcesz wsparcie "parsowania" formularzy, używając `request.form()`. * itsdangerous - Wymagany dla wsparcia `SessionMiddleware`. -* pyyaml - Wymagane dla wsparcia `SchemaGenerator` do Starlette (z FastAPI prawdopodobnie tego nie potrzebujesz). +* pyyaml - Wymagane dla wsparcia `SchemaGenerator` z Starlette (z FastAPI prawdopodobnie tego nie potrzebujesz). * graphene - Wymagane dla wsparcia `GraphQLApp`. * ujson - Wymagane jeżeli chcesz korzystać z `UJSONResponse`. Używane przez FastAPI / Starlette: -* uvicorn - dla serwera który ładuje i obsługuje twoją aplikacje. +* uvicorn - jako serwer, który ładuje i obsługuje Twoją aplikację. * orjson - Wymagane jeżeli chcesz używać `ORJSONResponse`. Możesz zainstalować wszystkie te aplikacje przy pomocy `pip install fastapi[all]`. ## Licencja -Ten projekt jest pod licencją MIT. +Ten projekt jest na licencji MIT. From d32a08df4ca85c361edccbb278b19a2e48bce496 Mon Sep 17 00:00:00 2001 From: Bart Skowron Date: Mon, 20 Dec 2021 02:24:11 +0100 Subject: [PATCH 18/20] Typo --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 83a3caf1915cd..4a300ae632dbc 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -125,7 +125,7 @@ $ pip install fastapi
-Na serwerze produkcyjnym będziez także potrzebował serwera ASGI, np. Uvicorn lub Hypercorn. +Na serwerze produkcyjnym będziesz także potrzebował serwera ASGI, np. Uvicorn lub Hypercorn.
From 3c228eed2114dbeaee6845fcaa4eb3ac7e356ced Mon Sep 17 00:00:00 2001 From: MicroPanda123 Date: Sat, 8 Jan 2022 23:02:53 +0000 Subject: [PATCH 19/20] Update docs/pl/docs/index.md Co-authored-by: Dima Tisnek --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index 4a300ae632dbc..edbc56a86311d 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -24,7 +24,7 @@ --- -FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący na standardowym typowaniu Pythona. +FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący się na standardowym typowaniu Pythona. Kluczowe cechy: From 98a8cf502e9a5152ce07ddfeadb41880fa1fafde Mon Sep 17 00:00:00 2001 From: Bart Skowron Date: Sun, 9 Jan 2022 23:14:05 +0100 Subject: [PATCH 20/20] Revert "Update docs/pl/docs/index.md" This reverts commit 3c228eed2114dbeaee6845fcaa4eb3ac7e356ced. --- docs/pl/docs/index.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pl/docs/index.md b/docs/pl/docs/index.md index edbc56a86311d..4a300ae632dbc 100644 --- a/docs/pl/docs/index.md +++ b/docs/pl/docs/index.md @@ -24,7 +24,7 @@ --- -FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący się na standardowym typowaniu Pythona. +FastAPI to nowoczesny, wydajny framework webowy do budowania API z użyciem Pythona 3.6+ bazujący na standardowym typowaniu Pythona. Kluczowe cechy: