Browse Source

🌐 Update translations for uk (update-outdated) (#15672)

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
pull/15675/head
Sebastián Ramírez 4 days ago
committed by GitHub
parent
commit
bb6dbdb6cd
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 8
      docs/uk/docs/_llm-test.md
  2. 54
      docs/uk/docs/alternatives.md
  3. 4
      docs/uk/docs/async.md
  4. 10
      docs/uk/docs/fastapi-cli.md
  5. 2
      docs/uk/docs/features.md
  6. 215
      docs/uk/docs/help-fastapi.md
  7. 6
      docs/uk/docs/python-types.md
  8. 12
      docs/uk/docs/tutorial/bigger-applications.md
  9. 4
      docs/uk/docs/tutorial/debugging.md
  10. 2
      docs/uk/docs/tutorial/header-params.md

8
docs/uk/docs/_llm-test.md

@ -124,10 +124,6 @@ works(foo="bar") # Це працює 🎉
//// tab | Тест //// tab | Тест
/// info | Інформація
Деякий текст
///
/// note | Примітка /// note | Примітка
Деякий текст Деякий текст
/// ///
@ -136,10 +132,6 @@ works(foo="bar") # Це працює 🎉
Деякий текст Деякий текст
/// ///
/// check | Перевірте
Деякий текст
///
/// tip | Порада /// tip | Порада
Деякий текст Деякий текст
/// ///

54
docs/uk/docs/alternatives.md

@ -36,7 +36,7 @@ Django REST Framework створив Том Крісті. Той самий тв
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Мати автоматичний веб-інтерфейс документації API. Мати автоматичний веб-інтерфейс документації API.
@ -56,7 +56,7 @@ Flask — це «мікрофреймворк», він не включає ін
Враховуючи простоту Flask, він здавався хорошим підходом для створення API. Наступним, що знайшов, був «Django REST Framework» для Flask. Враховуючи простоту Flask, він здавався хорошим підходом для створення API. Наступним, що знайшов, був «Django REST Framework» для Flask.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Бути мікрофреймворком. Зробити легким комбінування та поєднання необхідних інструментів та частин. Бути мікрофреймворком. Зробити легким комбінування та поєднання необхідних інструментів та частин.
@ -98,7 +98,7 @@ def read_url():
Зверніть увагу на схожість у `requests.get(...)` і `@app.get(...)`. Зверніть увагу на схожість у `requests.get(...)` і `@app.get(...)`.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
* Мати простий та інтуїтивно зрозумілий API. * Мати простий та інтуїтивно зрозумілий API.
* Використовувати імена (операції) методів HTTP безпосередньо, простим та інтуїтивно зрозумілим способом. * Використовувати імена (операції) методів HTTP безпосередньо, простим та інтуїтивно зрозумілим способом.
@ -118,7 +118,7 @@ def read_url():
Тому, коли говорять про версію 2.0, прийнято говорити «Swagger», а про версію 3+ «OpenAPI». Тому, коли говорять про версію 2.0, прийнято говорити «Swagger», а про версію 3+ «OpenAPI».
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Прийняти і використовувати відкритий стандарт для специфікацій API замість спеціальної схеми. Прийняти і використовувати відкритий стандарт для специфікацій API замість спеціальної схеми.
@ -147,7 +147,7 @@ Marshmallow створено для забезпечення цих функці
Але він був створений до того, як існували підказки типу Python. Отже, щоб визначити кожну <dfn title="визначення того, як дані повинні бути сформовані">схему</dfn>, вам потрібно використовувати спеціальні утиліти та класи, надані Marshmallow. Але він був створений до того, як існували підказки типу Python. Отже, щоб визначити кожну <dfn title="визначення того, як дані повинні бути сформовані">схему</dfn>, вам потрібно використовувати спеціальні утиліти та класи, надані Marshmallow.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Використовувати код для автоматичного визначення "схем", які надають типи даних і перевірку. Використовувати код для автоматичного визначення "схем", які надають типи даних і перевірку.
@ -163,13 +163,13 @@ Webargs — це інструмент, створений, щоб забезпе
Це чудовий інструмент, і я також часто використовував його, перш ніж створити **FastAPI**. Це чудовий інструмент, і я також часто використовував його, перш ніж створити **FastAPI**.
/// info | Інформація /// note | Примітка
Webargs був створений тими ж розробниками Marshmallow. Webargs був створений тими ж розробниками Marshmallow.
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Мати автоматичну перевірку даних вхідного запиту. Мати автоматичну перевірку даних вхідного запиту.
@ -193,13 +193,13 @@ Marshmallow і Webargs забезпечують перевірку, аналіз
Редактор тут нічим не може допомогти. І якщо ми змінимо параметри чи схеми Marshmallow і забудемо також змінити цю строку документа YAML, згенерована схема буде застарілою. Редактор тут нічим не може допомогти. І якщо ми змінимо параметри чи схеми Marshmallow і забудемо також змінити цю строку документа YAML, згенерована схема буде застарілою.
/// info | Інформація /// note | Примітка
APISpec був створений тими ж розробниками Marshmallow. APISpec був створений тими ж розробниками Marshmallow.
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Підтримувати відкритий стандарт API, OpenAPI. Підтримувати відкритий стандарт API, OpenAPI.
@ -225,13 +225,13 @@ APISpec був створений тими ж розробниками Marshmall
І ці самі генератори повного стеку були основою [**FastAPI** генераторів проектів](project-generation.md). І ці самі генератори повного стеку були основою [**FastAPI** генераторів проектів](project-generation.md).
/// info | Інформація /// note | Примітка
Flask-apispec був створений тими ж розробниками Marshmallow. Flask-apispec був створений тими ж розробниками Marshmallow.
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Створення схеми OpenAPI автоматично з того самого коду, який визначає серіалізацію та перевірку. Створення схеми OpenAPI автоматично з того самого коду, який визначає серіалізацію та перевірку.
@ -251,7 +251,7 @@ Flask-apispec був створений тими ж розробниками Mar
Він не дуже добре обробляє вкладені моделі. Отже, якщо тіло JSON у запиті є об’єктом JSON із внутрішніми полями, які, у свою чергу, є вкладеними об’єктами JSON, його неможливо належним чином задокументувати та перевірити. Він не дуже добре обробляє вкладені моделі. Отже, якщо тіло JSON у запиті є об’єктом JSON із внутрішніми полями, які, у свою чергу, є вкладеними об’єктами JSON, його неможливо належним чином задокументувати та перевірити.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Використовувати типи Python, щоб мати чудову підтримку редактора. Використовувати типи Python, щоб мати чудову підтримку редактора.
@ -271,7 +271,7 @@ Flask-apispec був створений тими ж розробниками Mar
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Знайти спосіб отримати божевільну продуктивність. Знайти спосіб отримати божевільну продуктивність.
@ -287,13 +287,13 @@ Falcon — ще один високопродуктивний фреймворк
Таким чином, перевірка даних, серіалізація та документація повинні виконуватися в коді, а не автоматично. Або вони повинні бути реалізовані як фреймворк поверх Falcon, як Hug. Така сама відмінність спостерігається в інших фреймворках, натхненних дизайном Falcon, що мають один об’єкт запиту та один об’єкт відповіді як параметри. Таким чином, перевірка даних, серіалізація та документація повинні виконуватися в коді, а не автоматично. Або вони повинні бути реалізовані як фреймворк поверх Falcon, як Hug. Така сама відмінність спостерігається в інших фреймворках, натхненних дизайном Falcon, що мають один об’єкт запиту та один об’єкт відповіді як параметри.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Знайти способи отримати чудову продуктивність. Знайти способи отримати чудову продуктивність.
Разом із Hug (оскільки Hug базується на Falcon) надихнув **FastAPI** оголосити параметр `response` у функціях. Разом із Hug (оскільки Hug базується на Falcon) надихнув **FastAPI** оголосити параметр `response` у функціях.
Хоча у FastAPI це необов’язково, і використовується в основному для встановлення заголовків, файлів cookie та альтернативних кодів статусу. Хоча у FastAPI це необов’язково, і використовується в основному для встановлення заголовків, кукі та альтернативних кодів статусу.
/// ///
@ -313,7 +313,7 @@ Falcon — ще один високопродуктивний фреймворк
Маршрути оголошуються в одному місці з використанням функцій, оголошених в інших місцях (замість використання декораторів, які можна розмістити безпосередньо поверх функції, яка обробляє кінцеву точку). Це ближче до того, як це робить Django, ніж до Flask (і Starlette). Він розділяє в коді речі, які відносно тісно пов’язані. Маршрути оголошуються в одному місці з використанням функцій, оголошених в інших місцях (замість використання декораторів, які можна розмістити безпосередньо поверх функції, яка обробляє кінцеву точку). Це ближче до того, як це робить Django, ніж до Flask (і Starlette). Він розділяє в коді речі, які відносно тісно пов’язані.
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Визначити додаткові перевірки для типів даних, використовуючи значення "за замовчуванням" атрибутів моделі. Це покращує підтримку редактора, а раніше вона була недоступна в Pydantic. Визначити додаткові перевірки для типів даних, використовуючи значення "за замовчуванням" атрибутів моделі. Це покращує підтримку редактора, а раніше вона була недоступна в Pydantic.
@ -335,19 +335,19 @@ Hug був одним із перших фреймворків, який реа
Оскільки він заснований на попередньому стандарті для синхронних веб-фреймворків Python (WSGI), він не може працювати з Websockets та іншими речами, хоча він також має високу продуктивність. Оскільки він заснований на попередньому стандарті для синхронних веб-фреймворків Python (WSGI), він не може працювати з Websockets та іншими речами, хоча він також має високу продуктивність.
/// info | Інформація /// note | Примітка
Hug створив Тімоті Крослі, той самий творець [`isort`](https://github.com/timothycrosley/isort), чудовий інструмент для автоматичного сортування імпорту у файлах Python. Hug створив Тімоті Крослі, той самий творець [`isort`](https://github.com/timothycrosley/isort), чудовий інструмент для автоматичного сортування імпорту у файлах Python.
/// ///
/// check | Ідеї, що надихнули **FastAPI** /// tip | Ідеї, що надихнули **FastAPI**
Hug надихнув частину APIStar і був одним із найбільш перспективних інструментів, поряд із APIStar. Hug надихнув частину APIStar і був одним із найбільш перспективних інструментів, поряд із APIStar.
Hug надихнув **FastAPI** на використання підказок типу Python для оголошення параметрів і автоматичного створення схеми, що визначає API. Hug надихнув **FastAPI** на використання підказок типу Python для оголошення параметрів і автоматичного створення схеми, що визначає API.
Hug надихнув **FastAPI** оголосити параметр `response` у функціях для встановлення заголовків і файлів cookie. Hug надихнув **FastAPI** оголосити параметр `response` у функціях для встановлення заголовків і кукі.
/// ///
@ -367,7 +367,7 @@ Hug надихнув **FastAPI** оголосити параметр `response`
Він мав систему введення залежностей. Він вимагав попередньої реєстрації компонентів, як і інші інструменти, розглянуті вище. Але все одно це була чудова функція. Він мав систему введення залежностей. Він вимагав попередньої реєстрації компонентів, як і інші інструменти, розглянуті вище. Але все одно це була чудова функція.
Я ніколи не міг використовувати його в повноцінному проекті, оскільки він не мав інтеграції безпеки, тому я не міг замінити всі функції, які мав, генераторами повного стеку на основі Flask-apispec. У моїх невиконаних проектах я мав створити запит на вилучення, додавши цю функцію. Я ніколи не міг використовувати його в повноцінному проекті, оскільки він не мав інтеграції безпеки, тому я не міг замінити всі функції, які мав, генераторами повного стеку на основі Flask-apispec. У моїх невиконаних проектах я мав створити запит на витяг, додавши цю функцію.
Але потім фокус проекту змінився. Але потім фокус проекту змінився.
@ -375,7 +375,7 @@ Hug надихнув **FastAPI** оголосити параметр `response`
Тепер APIStar — це набір інструментів для перевірки специфікацій OpenAPI, а не веб-фреймворк. Тепер APIStar — це набір інструментів для перевірки специфікацій OpenAPI, а не веб-фреймворк.
/// info | Інформація /// note | Примітка
APIStar створив Том Крісті. Той самий хлопець, який створив: APIStar створив Том Крісті. Той самий хлопець, який створив:
@ -385,7 +385,7 @@ APIStar створив Том Крісті. Той самий хлопець, я
/// ///
/// check | Надихнуло **FastAPI** на /// tip | Надихнуло **FastAPI** на
Існувати. Існувати.
@ -409,7 +409,7 @@ Pydantic — це бібліотека для визначення переві
Його можна порівняти з Marshmallow. Хоча він швидший за Marshmallow у тестах. Оскільки він базується на тих самих підказках типу Python, підтримка редактора чудова. Його можна порівняти з Marshmallow. Хоча він швидший за Marshmallow у тестах. Оскільки він базується на тих самих підказках типу Python, підтримка редактора чудова.
/// check | **FastAPI** використовує його для /// tip | **FastAPI** використовує його для
Виконання перевірки всіх даних, серіалізації даних і автоматичної документації моделі (на основі Схеми JSON). Виконання перевірки всіх даних, серіалізації даних і автоматичної документації моделі (на основі Схеми JSON).
@ -428,10 +428,10 @@ Starlette — це легкий фреймворк/набір інструмен
* Серйозно вражаючу продуктивність. * Серйозно вражаючу продуктивність.
* Підтримку WebSocket. * Підтримку WebSocket.
* Фонові завдання в процесі. * Фонові завдання в процесі.
* Події запуску та завершення роботи. * Події запуску та вимкнення.
* Тестового клієнта, побудований на HTTPX. * Тестового клієнта, побудований на HTTPX.
* CORS, GZip, статичні файли, потокові відповіді. * CORS, GZip, статичні файли, потокові відповіді.
* Підтримку сеансів і файлів cookie. * Підтримку сеансів і кукі.
* 100% покриття тестом. * 100% покриття тестом.
* 100% анотовану кодову базу. * 100% анотовану кодову базу.
* Кілька жорстких залежностей. * Кілька жорстких залежностей.
@ -452,7 +452,7 @@ ASGI — це новий «стандарт», який розробляєтьс
/// ///
/// check | **FastAPI** використовує його для /// tip | **FastAPI** використовує його для
Керування всіма основними веб-частинами. Додавання функцій зверху. Керування всіма основними веб-частинами. Додавання функцій зверху.
@ -470,7 +470,7 @@ Uvicorn — це блискавичний сервер ASGI, побудован
Це рекомендований сервер для Starlette і **FastAPI**. Це рекомендований сервер для Starlette і **FastAPI**.
/// check | **FastAPI** рекомендує це як /// tip | **FastAPI** рекомендує це як
Основний веб-сервер для запуску програм **FastAPI**. Основний веб-сервер для запуску програм **FastAPI**.

4
docs/uk/docs/async.md

@ -139,7 +139,7 @@ def results():
<img src="/img/async/concurrent-burgers/concurrent-burgers-07.png" class="illustration"> <img src="/img/async/concurrent-burgers/concurrent-burgers-07.png" class="illustration">
/// info | Інформація /// note | Примітка
Прекрасні ілюстрації від [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨 Прекрасні ілюстрації від [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨
@ -205,7 +205,7 @@ def results():
Багато розмов чи флірту не було, бо більшість часу пішла на очікування 🕙 перед прилавком. 😞 Багато розмов чи флірту не було, бо більшість часу пішла на очікування 🕙 перед прилавком. 😞
/// info | Інформація /// note | Примітка
Прекрасні ілюстрації від [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨 Прекрасні ілюстрації від [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨

10
docs/uk/docs/fastapi-cli.md

@ -95,7 +95,7 @@ entrypoint = "backend.main:app"
from backend.main import app from backend.main import app
``` ```
### `fastapi dev` зі шляхом { #fastapi-dev-with-path } ### `fastapi dev` зі шляхом або з опцією CLI `--entrypoint` { #fastapi-dev-with-path-or-with-entrypoint-cli-option }
Ви також можете передати шлях до файлу команді `fastapi dev`, і вона здогадається, який об'єкт застосунку FastAPI використовувати: Ви також можете передати шлях до файлу команді `fastapi dev`, і вона здогадається, який об'єкт застосунку FastAPI використовувати:
@ -103,7 +103,13 @@ from backend.main import app
$ fastapi dev main.py $ fastapi dev main.py
``` ```
Але вам доведеться щоразу пам'ятати, щоб передавати правильний шлях під час виклику команди `fastapi`. Або ви також можете передати опцію `--entrypoint` команді `fastapi dev`:
```console
$ fastapi dev --entrypoint main:app
```
Але вам доведеться щоразу пам'ятати, щоб передавати правильний шлях\entrypoint під час виклику команди `fastapi`.
Крім того, інші інструменти можуть не знайти його, наприклад [Розширення VS Code](editor-support.md) або [FastAPI Cloud](https://fastapicloud.com), тому рекомендується використовувати `entrypoint` у `pyproject.toml`. Крім того, інші інструменти можуть не знайти його, наприклад [Розширення VS Code](editor-support.md) або [FastAPI Cloud](https://fastapicloud.com), тому рекомендується використовувати `entrypoint` у `pyproject.toml`.

2
docs/uk/docs/features.md

@ -63,7 +63,7 @@ second_user_data = {
my_second_user: User = User(**second_user_data) my_second_user: User = User(**second_user_data)
``` ```
/// info | Інформація /// note | Примітка
`**second_user_data` означає: `**second_user_data` означає:

215
docs/uk/docs/help-fastapi.md

@ -1,14 +1,8 @@
# Допоможіть FastAPI - отримайте допомогу { #help-fastapi-get-help } # Допомога { #help }
Вам подобається **FastAPI**? Ви хочете допомогти FastAPI або отримати допомогу щодо FastAPI?
Хочете допомогти FastAPI, іншим користувачам та автору? Є дуже прості способи допомогти й отримати допомогу.
Або ви хочете отримати допомогу щодо **FastAPI**?
Є дуже прості способи допомогти (деякі потребують лише одного-двох кліків).
І є кілька способів отримати допомогу.
## Підпишіться на розсилку { #subscribe-to-the-newsletter } ## Підпишіться на розсилку { #subscribe-to-the-newsletter }
@ -20,9 +14,13 @@
* Несумісних змін 🚨 * Несумісних змін 🚨
* Порад і трюків ✅ * Порад і трюків ✅
## Стежте за FastAPI в X (Twitter) { #follow-fastapi-on-x-twitter } ## Стежте за FastAPI онлайн { #follow-fastapi-online }
[Стежте за @fastapi в **X (Twitter)**](https://x.com/fastapi), щоб отримувати найсвіжіші новини про **FastAPI**. 🐦 Ви можете стежити за **FastAPI** онлайн у кількох місцях:
* [@fastapi в **X / Twitter**](https://x.com/fastapi)
* [@fastapi.tiangolo.com у **Bluesky**](https://bsky.app/profile/fastapi.tiangolo.com)
* [FastAPI у **LinkedIn**](https://www.linkedin.com/company/fastapi/)
## Додайте зірочку **FastAPI** на GitHub { #star-fastapi-in-github } ## Додайте зірочку **FastAPI** на GitHub { #star-fastapi-in-github }
@ -38,98 +36,28 @@
Зробивши це, ви отримуватимете сповіщення (на вашу електронну пошту) щоразу, коли вийде новий реліз (нова версія) **FastAPI** з виправленнями помилок і новими можливостями. Зробивши це, ви отримуватимете сповіщення (на вашу електронну пошту) щоразу, коли вийде новий реліз (нова версія) **FastAPI** з виправленнями помилок і новими можливостями.
## Зв'яжіться з автором { #connect-with-the-author } ## Стежте за автором { #follow-the-author }
Ви можете зв'язатися зі [мною (Sebastián Ramírez / `tiangolo`)](https://tiangolo.com), автором.
Ви можете:
* [Стежити за мною на **GitHub**](https://github.com/tiangolo).
* Подивитися інші Open Source-проєкти, які я створив і які можуть вам допомогти.
* Стежити, щоб бачити, коли я створюю новий Open Source-проєкт.
* [Стежити за мною в **X (Twitter)**](https://x.com/tiangolo) або [Mastodon](https://fosstodon.org/@tiangolo).
* Розкажіть мені, як ви використовуєте FastAPI (мені дуже приємно це чути).
* Дізнаватися, коли я роблю оголошення або випускаю нові інструменти.
* Також ви можете [стежити за @fastapi в X (Twitter)](https://x.com/fastapi) (окремий акаунт).
* [Стежити за мною в **LinkedIn**](https://www.linkedin.com/in/tiangolo/).
* Дізнаватися, коли я роблю оголошення або випускаю нові інструменти (хоча X (Twitter) я використовую частіше 🤷‍♂).
* Читати, що я пишу (або стежити за мною) на [**Dev.to**](https://dev.to/tiangolo) або [**Medium**](https://medium.com/@tiangolo).
* Читати інші ідеї, статті та про інструменти, які я створив.
* Стежити, щоб читати нове, коли я щось публікую.
## Твітніть про **FastAPI** { #tweet-about-fastapi }
[Твітніть про **FastAPI**](https://x.com/compose/tweet?text=I'm loving @fastapi because... https://github.com/fastapi/fastapi) і дайте мені та іншим знати, чому він вам подобається. 🎉
Мені дуже подобається дізнаватися, як використовують **FastAPI**, що вам у ньому сподобалося, у якому проєкті/компанії ви його застосовуєте тощо.
## Голосуйте за FastAPI { #vote-for-fastapi } Ви можете стежити за [мною (Sebastián Ramírez / `tiangolo`)](https://tiangolo.com), автором, у кількох місцях, щоб дізнаватися, коли в мене є новини про FastAPI та друзів:
* [Проголосуйте за **FastAPI** на Slant](https://www.slant.co/options/34241/~fastapi-review). * [@tiangolo на **GitHub**](https://github.com/tiangolo).
* [Проголосуйте за **FastAPI** на AlternativeTo](https://alternativeto.net/software/fastapi/about/). * [@tiangolo в **X (Twitter)**](https://x.com/tiangolo)
* [Повідомте, що ви використовуєте **FastAPI**, на StackShare](https://stackshare.io/pypi-fastapi). * [@tiangolo.com у **Bluesky**](https://bsky.app/profile/tiangolo.com)
* [@tiangolo у **LinkedIn**](https://www.linkedin.com/in/tiangolo/).
## Допомагайте іншим з питаннями на GitHub { #help-others-with-questions-in-github } ## Допомагайте іншим з питаннями на GitHub { #help-others-with-questions-in-github }
Ви можете спробувати допомагати іншим з їхніми питаннями у: Ви можете спробувати допомагати іншим з їхніми питаннями у [GitHub Discussions](https://github.com/fastapi/fastapi/discussions/categories/questions?discussions_q=category%3AQuestions+is%3Aunanswered).
* [GitHub Discussions](https://github.com/fastapi/fastapi/discussions/categories/questions?discussions_q=category%3AQuestions+is%3Aunanswered)
* [GitHub Issues](https://github.com/fastapi/fastapi/issues?q=is%3Aissue+is%3Aopen+sort%3Aupdated-desc+label%3Aquestion+-label%3Aanswered+)
У багатьох випадках ви вже можете знати відповідь на ці питання. 🤓 У багатьох випадках ви вже можете знати відповідь на ці питання. 🤓
Якщо ви багато допомагаєте людям із їхніми питаннями, ви станете офіційним [Експертом FastAPI](fastapi-people.md#fastapi-experts). 🎉 Якщо ви багато допомагаєте людям із їхніми питаннями, ви станете офіційним [Експертом FastAPI](fastapi-people.md#fastapi-experts). 🎉
Пам'ятайте, найважливіше: намагайтеся бути добрими. Люди приходять зі своєю фрустрацією і часто питають не найкращим чином, але постарайтеся бути якомога доброзичливішими. 🤗 Пам'ятайте, найважливіше: намагайтеся бути добрими. 🤗
Ідея в тому, щоб спільнота **FastAPI** була доброзичливою та гостинною. Водночас не терпіть булінг чи неповажну поведінку щодо інших. Ми маємо піклуватися одне про одного.
---
Ось як допомагати іншим із питаннями (у discussions або issues):
### Зрозумійте питання { #understand-the-question }
* Перевірте, чи розумієте ви **мету** та варіант використання людини, яка питає.
* Потім перевірте, чи **чітке** саме питання (переважна більшість — це питання).
* Часто запит стосується уявного рішення користувача, але може бути **краще**. Якщо ви краще зрозумієте проблему та варіант використання, зможете запропонувати кращу **альтернативу**.
* Якщо ви не розумієте питання, попросіть більше **подробиць**.
### Відтворіть проблему { #reproduce-the-problem }
У більшості випадків і запитань мова йде про **оригінальний код** людини. ### Як допомагати { #how-to-help }
Часто вони наводять лише фрагмент коду, але цього недостатньо, щоб **відтворити проблему**. Дотримуйтесь [посібника, як допомагати](https://tiangolo.com/open-source/help/#help-others-with-questions-in-github) тут.
* Ви можете попросити надати [мінімальний, відтворюваний приклад](https://stackoverflow.com/help/minimal-reproducible-example), який ви зможете **скопіювати-вставити** і запустити локально, щоб побачити ту саму помилку або поведінку, яку бачать вони, або краще зрозуміти їхній варіант використання.
* Якщо ви дуже щедрі, можете спробувати **створити такий приклад** самостійно, лише на основі опису проблеми. Просто майте на увазі, що це може зайняти багато часу, і краще спочатку попросити їх уточнити проблему.
### Запропонуйте рішення { #suggest-solutions }
* Після того як ви змогли зрозуміти питання, дайте можливу **відповідь**.
* Часто краще зрозуміти їхню **первинну проблему або варіант використання**, адже може бути кращий спосіб її вирішити, ніж те, що вони намагаються зробити.
### Попросіть закрити { #ask-to-close }
Якщо вони відповіли, дуже ймовірно, що ви розв'язали їхню проблему. Вітаю, **ви герой**! 🦸
* Тепер, якщо це вирішило їхню проблему, ви можете попросити:
* У GitHub Discussions: позначити коментар як **відповідь**.
* У GitHub Issues: **закрити** issue.
## Стежте за репозиторієм GitHub { #watch-the-github-repository }
Ви можете «спостерігати» за FastAPI на GitHub (натиснувши кнопку «watch» у верхньому правому куті): [https://github.com/fastapi/fastapi](https://github.com/fastapi/fastapi). 👀
Якщо вибрати «Watching» замість «Releases only», ви отримуватимете сповіщення, коли хтось створює нове issue або питання. Ви також можете вказати, що хочете отримувати сповіщення лише про нові issues, або discussions, або PR тощо.
Тоді ви зможете спробувати допомогти їм вирішити ці питання.
## Ставте питання { #ask-questions } ## Ставте питання { #ask-questions }
@ -138,100 +66,13 @@
* Поставити **питання** або запитати про **проблему**. * Поставити **питання** або запитати про **проблему**.
* Запропонувати нову **можливість**. * Запропонувати нову **можливість**.
**Примітка**: якщо ви це зробите, я попрошу вас також допомагати іншим. 😉
## Переглядайте запити на витяг { #review-pull-requests }
Ви можете допомогти мені переглядати запити на витяг інших.
І знову, будь ласка, намагайтеся бути якомога доброзичливішими. 🤗
---
Ось що слід пам'ятати і як переглядати запит на витяг:
### Зрозумійте проблему { #understand-the-problem }
* Спочатку переконайтеся, що ви **розумієте проблему**, яку намагається вирішити запит на витяг. Може бути довша дискусія у GitHub Discussion або issue.
* Також є велика ймовірність, що запит на витяг насправді не потрібен, бо проблему можна розв'язати **іншим способом**. Тоді ви можете про це запропонувати або запитати.
### Не переймайтеся стилем { #dont-worry-about-style }
* Не надто хвилюйтеся про стиль повідомлень фіксацій, я зроблю squash and merge, налаштувавши фіксацію вручну.
* Також не переймайтеся правилами стилю, вже є автоматизовані інструменти, що це перевіряють.
А якщо будуть інші вимоги щодо стилю чи узгодженості, я попрошу про це безпосередньо або додам зверху фіксації з потрібними змінами.
### Перевірте код { #check-the-code }
* Перегляньте та прочитайте код, оцініть, чи він має сенс, **запустіть його локально** і перевірте, чи справді він розв'язує проблему.
* Потім залиште **коментар**, що ви це зробили, так я знатиму, що ви справді перевірили.
/// info
На жаль, я не можу просто довіряти PR, які мають кілька схвалень.
Бувало не раз, що PR мали 3, 5 або більше схвалень, мабуть тому, що опис привабливий, але коли я перевіряв PR, вони виявлялися зламаними, мали помилку або не розв'язували заявлену проблему. 😅
Тож дуже важливо, щоб ви справді прочитали і запустили код та повідомили в коментарях, що ви це зробили. 🤓
///
* Якщо PR можна якось спростити, ви можете про це попросити, але немає потреби бути надто прискіпливими, адже може бути багато суб'єктивних точок зору (і в мене також є своя 🙈), тож краще зосередитися на фундаментальних речах.
### Тести { #tests }
* Допоможіть перевірити, що PR має **тести**.
* Переконайтеся, що тести **падають** до PR. 🚨
* Потім перевірте, що тести **проходять** після PR. ✅
* Багато PRів не мають тестів, ви можете **нагадати** додати тести або навіть **запропонувати** деякі тести самі. Це одна з речей, яка найбільше забирає часу, і ви дуже допоможете.
* Потім також прокоментуйте, що саме ви спробували, так я знатиму, що ви це перевірили. 🤓
## Створіть запит на витяг { #create-a-pull-request }
Ви можете [зробити внесок](contributing.md) у вихідний код із запитами на витяг, наприклад:
* Щоб виправити описку, знайдену в документації.
* Щоб поділитися статтею, відео або подкастом про FastAPI, який ви створили або знайшли, [відредагувавши цей файл](https://github.com/fastapi/fastapi/edit/master/docs/en/data/external_links.yml).
* Обов'язково додайте ваше посилання на початок відповідного розділу.
* Щоб допомогти [перекласти документацію](contributing.md#translations) вашою мовою.
* Ви також можете допомогти з переглядом перекладів, створених іншими.
* Щоб запропонувати нові розділи документації.
* Щоб виправити наявну проблему/помилку.
* Обов'язково додайте тести.
* Щоб додати нову можливість.
* Обов'язково додайте тести.
* Обов'язково додайте документацію, якщо це доречно.
## Допоможіть підтримувати FastAPI { #help-maintain-fastapi }
Допоможіть мені підтримувати **FastAPI**! 🤓
Роботи багато, і більшу її частину можете зробити **ВИ**.
Основні завдання, які ви можете виконувати вже зараз:
* [Допомагайте іншим з питаннями на GitHub](#help-others-with-questions-in-github) (див. розділ вище).
* [Переглядайте запити на витяг](#review-pull-requests) (див. розділ вище).
Ці два завдання **найбільше споживають час**. Це основна робота з підтримки FastAPI.
Якщо ви можете допомогти мені з цим, **ви допомагаєте підтримувати FastAPI** і гарантуєте, що він **рухатиметься швидше й краще**. 🚀
## Долучайтеся до чату { #join-the-chat } ## Долучайтеся до чату { #join-the-chat }
Долучайтеся до 👥 [серверу чату Discord](https://discord.gg/VQjSZaeJmf) 👥 і спілкуйтеся з іншими в спільноті FastAPI. Долучайтеся до 👥 [серверу чату Discord](https://discord.gg/VQjSZaeJmf) 👥 і спілкуйтеся з іншими в спільноті FastAPI.
/// tip /// tip | Порада
Для запитань ставте їх у [GitHub Discussions](https://github.com/fastapi/fastapi/discussions/new?category=questions), там значно вища ймовірність, що вам допоможуть [Експерти FastAPI](fastapi-people.md#fastapi-experts). Для запитань ставте їх у GitHub Discussions, значно вища ймовірність, що ви отримаєте допомогу.
Використовуйте чат лише для інших загальних розмов. Використовуйте чат лише для інших загальних розмов.
@ -241,16 +82,6 @@
Майте на увазі, що оскільки чати дозволяють більше «вільної розмови», легко ставити надто загальні питання, на які складніше відповісти, тож ви можете не отримати відповідей. Майте на увазі, що оскільки чати дозволяють більше «вільної розмови», легко ставити надто загальні питання, на які складніше відповісти, тож ви можете не отримати відповідей.
У GitHub шаблон підкаже вам, як написати правильне питання, щоб ви легше отримали хорошу відповідь, або навіть вирішили проблему самостійно ще до запиту. І в GitHub я можу гарантувати, що завжди на все відповім, навіть якщо це займе трохи часу. Особисто я не можу робити це в чатах. 😅 У GitHub шаблон підкаже вам, як написати правильне питання, щоб ви легше отримали хорошу відповідь, або навіть розв'язали проблему самостійно ще до запиту.
Розмови в чатах також не так просто шукати, як у GitHub, тож питання та відповіді можуть загубитися. І лише ті, що в GitHub, зараховуються, щоб стати [Експертом FastAPI](fastapi-people.md#fastapi-experts), тож швидше за все ви отримаєте більше уваги саме в GitHub.
З іншого боку, у чатах є тисячі користувачів, тож дуже ймовірно, що ви майже завжди знайдете там співрозмовника. 😄
## Спонсоруйте автора { #sponsor-the-author }
Якщо ваш **продукт/компанія** залежить від **FastAPI** або пов'язана з ним і ви хочете охопити його користувачів, ви можете спонсорувати автора (мене) через [GitHub sponsors](https://github.com/sponsors/tiangolo). Залежно від рівня ви можете отримати додаткові переваги, наприклад значок у документації. 🎁
---
Дякую! 🚀 Розмови в чатах також не так просто шукати, як у GitHub, вони губляться.

6
docs/uk/docs/python-types.md

@ -172,7 +172,7 @@ def some_function(data: Any):
{* ../../docs_src/python_types/tutorial006_py310.py hl[1] *} {* ../../docs_src/python_types/tutorial006_py310.py hl[1] *}
/// info | Інформація /// note | Примітка
Ці внутрішні типи в квадратних дужках називаються «параметрами типу». Ці внутрішні типи в квадратних дужках називаються «параметрами типу».
@ -283,7 +283,7 @@ def some_function(data: Any):
{* ../../docs_src/python_types/tutorial011_py310.py *} {* ../../docs_src/python_types/tutorial011_py310.py *}
/// info | Інформація /// note | Примітка
Щоб дізнатись більше про [Pydantic, перегляньте його документацію](https://docs.pydantic.dev/). Щоб дізнатись більше про [Pydantic, перегляньте його документацію](https://docs.pydantic.dev/).
@ -341,7 +341,7 @@ def some_function(data: Any):
Важливо те, що за допомогою стандартних типів Python в одному місці (замість того, щоб додавати більше класів, декораторів тощо), **FastAPI** зробить багато роботи за вас. Важливо те, що за допомогою стандартних типів Python в одному місці (замість того, щоб додавати більше класів, декораторів тощо), **FastAPI** зробить багато роботи за вас.
/// info | Інформація /// note | Примітка
Якщо ви вже пройшли весь навчальний посібник і повернулися, щоб дізнатися більше про типи, ось хороший ресурс: [«шпаргалка» від `mypy`](https://mypy.readthedocs.io/en/latest/cheat_sheet_py3.html). Якщо ви вже пройшли весь навчальний посібник і повернулися, щоб дізнатися більше про типи, ось хороший ресурс: [«шпаргалка» від `mypy`](https://mypy.readthedocs.io/en/latest/cheat_sheet_py3.html).

12
docs/uk/docs/tutorial/bigger-applications.md

@ -4,7 +4,7 @@
**FastAPI** надає зручний інструмент для структурування вашого застосунку, зберігаючи всю гнучкість. **FastAPI** надає зручний інструмент для структурування вашого застосунку, зберігаючи всю гнучкість.
/// info | Інформація /// note | Примітка
Якщо ви прийшли з Flask, це еквівалент «Blueprints» у Flask. Якщо ви прийшли з Flask, це еквівалент «Blueprints» у Flask.
@ -194,7 +194,7 @@ async def read_item(item_id: str):
/// ///
/// check | Перевірте /// tip | Порада
Параметри `prefix`, `tags`, `responses` і `dependencies` - це (як і в багатьох інших випадках) просто можливість **FastAPI**, яка допомагає уникати дублювання коду. Параметри `prefix`, `tags`, `responses` і `dependencies` - це (як і в багатьох інших випадках) просто можливість **FastAPI**, яка допомагає уникати дублювання коду.
@ -339,7 +339,7 @@ from .routers import items, users
from app.routers import items, users from app.routers import items, users
``` ```
/// info | Інформація /// note | Примітка
Перша версія - «відносний імпорт»: Перша версія - «відносний імпорт»:
@ -382,7 +382,7 @@ from .routers.users import router
{* ../../docs_src/bigger_applications/app_an_py310/main.py hl[10:11] title["app/main.py"] *} {* ../../docs_src/bigger_applications/app_an_py310/main.py hl[10:11] title["app/main.py"] *}
/// info | Інформація /// note | Примітка
`users.router` містить `APIRouter` у файлі `app/routers/users.py`. `users.router` містить `APIRouter` у файлі `app/routers/users.py`.
@ -402,7 +402,7 @@ from .routers.users import router
/// ///
/// check | Перевірте /// tip | Порада
Вам не потрібно перейматися продуктивністю під час включення router'ів. Вам не потрібно перейматися продуктивністю під час включення router'ів.
@ -451,7 +451,7 @@ from .routers.users import router
і це працюватиме коректно разом з усіма іншими *операціями шляху*, доданими через `app.include_router()`. і це працюватиме коректно разом з усіма іншими *операціями шляху*, доданими через `app.include_router()`.
/// info | Дуже технічні деталі /// note | Дуже технічні деталі
Примітка: це дуже технічна деталь, яку ви, ймовірно, можете просто пропустити. Примітка: це дуже технічна деталь, яку ви, ймовірно, можете просто пропустити.

4
docs/uk/docs/tutorial/debugging.md

@ -40,7 +40,7 @@ $ python myapp.py
</div> </div>
тоді внутрішня змінна `__name__` у вашому файлі, яка створюється автоматично Python, матиме значення рядка `"__main__"`. тоді внутрішня змінна `__name__` у вашому файлі, яка створюється автоматично Python, матиме значення строки `"__main__"`.
Отже, цей блок коду: Отже, цей блок коду:
@ -72,7 +72,7 @@ from myapp import app
не буде виконано. не буде виконано.
/// info /// note | Примітка
Для отримання додаткової інформації дивіться [офіційну документацію Python](https://docs.python.org/3/library/__main__.html). Для отримання додаткової інформації дивіться [офіційну документацію Python](https://docs.python.org/3/library/__main__.html).

2
docs/uk/docs/tutorial/header-params.md

@ -24,7 +24,7 @@
/// ///
/// info | Інформація /// note | Примітка
Щоб оголосити заголовки, потрібно використовувати `Header`, інакше параметри будуть інтерпретуватися як параметри запиту. Щоб оголосити заголовки, потрібно використовувати `Header`, інакше параметри будуть інтерпретуватися як параметри запиту.

Loading…
Cancel
Save