From: Artem Golicyn <86262613+AGolicyn@users.noreply.github.com>
Date: Sat, 3 Jun 2023 12:31:44 +0000 (+0300)
Subject: 🌐 Add Russian translation for `docs/ru/docs/tutorial/path-params.md` (#9519)
X-Git-Tag: 0.96.0~28
X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=5017949010c8c077eccb028e532e91090ec794d8;p=thirdparty%2Ffastapi%2Ffastapi.git
🌐 Add Russian translation for `docs/ru/docs/tutorial/path-params.md` (#9519)
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: Vladislav Kramorenko <85196001+Xewus@users.noreply.github.com>
---
diff --git a/docs/ru/docs/tutorial/path-params.md b/docs/ru/docs/tutorial/path-params.md
new file mode 100644
index 0000000000..55b498ef0a
--- /dev/null
+++ b/docs/ru/docs/tutorial/path-params.md
@@ -0,0 +1,251 @@
+# Path-паÑамеÑÑÑ
+
+ÐÑ Ð¼Ð¾Ð¶ÐµÑе опÑеделиÑÑ "паÑамеÑÑÑ" или "пеÑеменнÑе" пÑÑи, иÑполÑзÑÑ ÑинÑакÑÐ¸Ñ ÑоÑмаÑиÑованнÑÑ
ÑÑÑок Python:
+
+```Python hl_lines="6-7"
+{!../../../docs_src/path_params/tutorial001.py!}
+```
+
+ÐнаÑение паÑамеÑÑа пÑÑи `item_id` бÑÐ´ÐµÑ Ð¿ÐµÑедано в ÑÑнкÑÐ¸Ñ Ð² каÑеÑÑве аÑгÑменÑа `item_id`.
+
+ÐÑли запÑÑÑиÑе ÑÑÐ¾Ñ Ð¿ÑÐ¸Ð¼ÐµÑ Ð¸ пеÑейдÑÑе по адÑеÑÑ: http://127.0.0.1:8000/items/foo, Ñо ÑвидиÑе оÑвеÑ:
+
+```JSON
+{"item_id":"foo"}
+```
+
+## ÐаÑамеÑÑÑ Ð¿ÑÑи Ñ Ñипами
+
+ÐÑ Ð¼Ð¾Ð¶ÐµÑе обÑÑвиÑÑ Ñип паÑамеÑÑа пÑÑи в ÑÑнкÑии, иÑполÑзÑÑ ÑÑандаÑÑнÑе анноÑаÑии Ñипов Python.
+
+```Python hl_lines="7"
+{!../../../docs_src/path_params/tutorial002.py!}
+```
+
+ÐдеÑÑ, `item_id` обÑÑвлен Ñипом `int`.
+
+!!! check "ÐамеÑка"
+ ÐÑо обеÑпеÑÐ¸Ñ Ð¿Ð¾Ð´Ð´ÐµÑÐ¶ÐºÑ ÑедакÑоÑа внÑÑÑи ÑÑнкÑии (пÑовеÑка оÑибок, авÑодополнение и Ñ.п.).
+
+## ÐÑеобÑазование даннÑÑ
+
+ÐÑли запÑÑÑиÑе ÑÑÐ¾Ñ Ð¿ÑÐ¸Ð¼ÐµÑ Ð¸ пеÑейдÑÑе по адÑеÑÑ: http://127.0.0.1:8000/items/3, Ñо ÑвидиÑе оÑвеÑ:
+
+```JSON
+{"item_id":3}
+```
+
+!!! check "ÐамеÑка"
+ ÐбÑаÑиÑе внимание на знаÑение `3`, коÑоÑое полÑÑила (и веÑнÑла) ÑÑнкÑиÑ. ÐÑо ÑелоÑиÑленнÑй Python `int`, а не ÑÑÑока `"3"`.
+
+ ÐÑполÑзÑÑ Ð¾Ð¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñипов, **FastAPI** вÑполнÑÐµÑ Ð°Ð²ÑомаÑиÑеÑкий "паÑÑинг" запÑоÑов.
+
+## ÐÑовеÑка даннÑÑ
+
+ÐÑли оÑкÑоеÑе бÑаÑÐ·ÐµÑ Ð¿Ð¾ адÑеÑÑ http://127.0.0.1:8000/items/foo, Ñо ÑвидиÑе инÑеÑеÑнÑÑ HTTP-оÑибкÑ:
+
+```JSON
+{
+ "detail": [
+ {
+ "loc": [
+ "path",
+ "item_id"
+ ],
+ "msg": "value is not a valid integer",
+ "type": "type_error.integer"
+ }
+ ]
+}
+```
+
+из-за Ñого, ÑÑо паÑамеÑÑ Ð¿ÑÑи `item_id` Ð¸Ð¼ÐµÐµÑ Ð·Ð½Ð°Ñение `"foo"`, коÑоÑое не ÑвлÑеÑÑÑ Ñипом `int`.
+
+Та же оÑибка возникнеÑ, еÑли вмеÑÑо `int` пеÑедаÑÑ `float` , напÑимеÑ: http://127.0.0.1:8000/items/4.2
+
+!!! check "ÐамеÑка"
+ **FastAPI** обеÑпеÑÐ¸Ð²Ð°ÐµÑ Ð¿ÑовеÑÐºÑ Ñипов, иÑполÑзÑÑ Ð²ÑÑ Ñе же опÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñипов.
+
+ ÐбÑаÑиÑе внимание, ÑÑо в ÑекÑÑе оÑибки Ñвно Ñказано меÑÑо не пÑоÑедÑее пÑовеÑкÑ.
+
+ ÐÑо оÑÐµÐ½Ñ Ð¿Ð¾Ð»ÐµÐ·Ð½Ð¾ пÑи ÑазÑабоÑке и оÑладке кода, коÑоÑÑй взаимодейÑÑвÑÐµÑ Ñ API.
+
+## ÐокÑменÑаÑиÑ
+
+Ð ÑепеÑÑ, когда оÑкÑоеÑе бÑаÑÐ·ÐµÑ Ð¿Ð¾ адÑеÑÑ: http://127.0.0.1:8000/docs, Ñо ÑвидиÑе Ð²Ð¾Ñ ÑакÑÑ Ð°Ð²ÑомаÑиÑеÑки ÑгенеÑиÑованнÑÑ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ API:
+
+
+
+!!! check "ÐамеÑка"
+ ÐÑÑ Ñаз, пÑоÑÑо иÑполÑзÑÑ Ð¾Ð¿ÑÐµÐ´ÐµÐ»ÐµÐ½Ð¸Ñ Ñипов, **FastAPI** обеÑпеÑÐ¸Ð²Ð°ÐµÑ Ð°Ð²ÑомаÑиÑеÑкÑÑ Ð¸Ð½ÑеÑакÑивнÑÑ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ (Ñ Ð¸Ð½ÑегÑаÑией Swagger UI).
+
+ ÐбÑаÑиÑе внимание, ÑÑо паÑамеÑÑ Ð¿ÑÑи обÑÑвлен ÑелоÑиÑленнÑм.
+
+## ÐÑеимÑÑеÑÑва ÑÑандаÑÑизаÑии, алÑÑеÑнаÑÐ¸Ð²Ð½Ð°Ñ Ð´Ð¾ÐºÑменÑаÑиÑ
+
+ÐоÑколÑÐºÑ ÑгенеÑиÑÐ¾Ð²Ð°Ð½Ð½Ð°Ñ ÑÑ
ема ÑооÑвеÑÑÑвÑÐµÑ ÑÑандаÑÑÑ OpenAPI, ÐµÑ Ð¼Ð¾Ð¶Ð½Ð¾ иÑполÑзоваÑÑ Ñо множеÑÑвом ÑовмеÑÑимÑÑ
инÑÑÑÑменÑов.
+
+Ðменно поÑÑомÑ, FastAPI Ñам пÑедоÑÑавлÑÐµÑ Ð°Ð»ÑÑеÑнаÑивнÑÑ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ API (иÑполÑзÑÑ ReDoc), коÑоÑÑÑ Ð¼Ð¾Ð¶Ð½Ð¾ полÑÑиÑÑ Ð¿Ð¾ адÑеÑÑ: http://127.0.0.1:8000/redoc.
+
+
+
+Ðо Ñой же пÑиÑине, еÑÑÑ Ð¼Ð½Ð¾Ð¶ÐµÑÑво ÑовмеÑÑимÑÑ
инÑÑÑÑменÑов, вклÑÑÐ°Ñ Ð¸Ð½ÑÑÑÑменÑÑ Ð³ÐµÐ½ÐµÑаÑии кода Ð´Ð»Ñ Ð¼Ð½Ð¾Ð³Ð¸Ñ
ÑзÑков.
+
+## Pydantic
+
+ÐÑÑ Ð¿ÑовеÑка даннÑÑ
вÑполнÑеÑÑÑ Ð¿Ð¾Ð´ капоÑом Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ Pydantic. ÐоÑÑÐ¾Ð¼Ñ Ð²Ñ Ð¼Ð¾Ð¶ÐµÑе бÑÑÑ ÑвеÑÐµÐ½Ñ Ð² каÑеÑÑве обÑабоÑки даннÑÑ
.
+
+ÐÑ Ð¼Ð¾Ð¶ÐµÑе иÑполÑзоваÑÑ Ð² анноÑаÑиÑÑ
как пÑоÑÑÑе ÑÐ¸Ð¿Ñ Ð´Ð°Ð½Ð½ÑÑ
, вÑоде `str`, `float`, `bool`, Ñак и более ÑложнÑе ÑипÑ.
+
+ÐекоÑоÑÑе из ниÑ
ÑаÑÑмаÑÑиваÑÑÑÑ Ð² ÑледÑÑÑиÑ
главаÑ
данного ÑÑководÑÑва.
+
+## ÐоÑÑдок Ð¸Ð¼ÐµÐµÑ Ð·Ð½Ð°Ñение
+
+ÐÑи Ñоздании *опеÑаÑий пÑÑи* можно ÑÑолкнÑÑÑÑÑ Ñ ÑиÑÑаÑией, когда пÑÑÑ ÑвлÑеÑÑÑ ÑикÑиÑованнÑм.
+
+ÐапÑимеÑ, `/users/me`. ÐÑедположим, ÑÑо ÑÑо пÑÑÑ Ð´Ð»Ñ Ð¿Ð¾Ð»ÑÑÐµÐ½Ð¸Ñ Ð´Ð°Ð½Ð½ÑÑ
о ÑекÑÑем полÑзоваÑеле.
+
+У Ð²Ð°Ñ Ñакже Ð¼Ð¾Ð¶ÐµÑ Ð±ÑÑÑ Ð¿ÑÑÑ `/users/{user_id}`, ÑÑÐ¾Ð±Ñ Ð¿Ð¾Ð»ÑÑиÑÑ Ð´Ð°Ð½Ð½Ñе о конкÑеÑном полÑзоваÑеле по его ID.
+
+ÐоÑколÑÐºÑ *опеÑаÑии пÑÑи* вÑполнÑÑÑÑÑ Ð² поÑÑдке иÑ
обÑÑвлениÑ, необÑ
одимо, ÑÑÐ¾Ð±Ñ Ð¿ÑÑÑ Ð´Ð»Ñ `/users/me` бÑл обÑÑвлен ÑанÑÑе, Ñем пÑÑÑ Ð´Ð»Ñ `/users/{user_id}`:
+
+
+```Python hl_lines="6 11"
+{!../../../docs_src/path_params/tutorial003.py!}
+```
+
+ÐнаÑе пÑÑÑ Ð´Ð»Ñ `/users/{user_id}` Ñакже бÑÐ´ÐµÑ ÑооÑвеÑÑÑвоваÑÑ `/users/me`, "подÑазÑмеваÑ", ÑÑо он полÑÑÐ°ÐµÑ Ð¿Ð°ÑамеÑÑ `user_id` Ñо знаÑением `"me"`.
+
+ÐналогиÑно, Ð²Ñ Ð½Ðµ можеÑе пеÑеопÑеделиÑÑ Ð¾Ð¿ÐµÑаÑÐ¸Ñ Ñ Ð¿ÑÑем:
+
+```Python hl_lines="6 11"
+{!../../../docs_src/path_params/tutorial003b.py!}
+```
+
+ÐеÑвÑй бÑÐ´ÐµÑ Ð²ÑполнÑÑÑÑÑ Ð²Ñегда, Ñак как пÑÑÑ ÑÐ¾Ð²Ð¿Ð°Ð´Ð°ÐµÑ Ð¿ÐµÑвÑм.
+
+## ÐÑедопÑеделеннÑе знаÑениÑ
+
+ЧÑо еÑли нам нÑжно заÑанее опÑеделиÑÑ Ð´Ð¾Ð¿ÑÑÑимÑе *паÑамеÑÑÑ Ð¿ÑÑи*, коÑоÑÑе *опеÑаÑÐ¸Ñ Ð¿ÑÑи* Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑинимаÑÑ? Ð Ñаком ÑлÑÑае можно иÑполÑзоваÑÑ ÑÑандаÑÑное пеÑеÑиÑление `Enum` Python.
+
+### Создание клаÑÑа `Enum`
+
+ÐмпоÑÑиÑÑйÑе `Enum` и ÑоздайÑе подклаÑÑ, коÑоÑÑй наÑледÑеÑÑÑ Ð¾Ñ `str` и `Enum`.
+
+ÐÑ Ð½Ð°ÑледÑемÑÑ Ð¾Ñ `str`, ÑÑÐ¾Ð±Ñ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ API могла понÑÑÑ, ÑÑо знаÑÐµÐ½Ð¸Ñ Ð´Ð¾Ð»Ð¶Ð½Ñ Ð±ÑÑÑ Ñипа `string` и оÑобÑажалаÑÑ Ð¿ÑавилÑно.
+
+ÐаÑем ÑоздайÑе аÑÑибÑÑÑ ÐºÐ»Ð°ÑÑа Ñ ÑикÑиÑованнÑми допÑÑÑимÑми знаÑениÑми:
+
+```Python hl_lines="1 6-9"
+{!../../../docs_src/path_params/tutorial005.py!}
+```
+
+!!! info "ÐополниÑелÑÐ½Ð°Ñ Ð¸Ð½ÑоÑмаÑиÑ"
+ ÐеÑеÑиÑÐ»ÐµÐ½Ð¸Ñ (enum) доÑÑÑÐ¿Ð½Ñ Ð² Python наÑÐ¸Ð½Ð°Ñ Ñ Ð²ÐµÑÑии 3.4.
+
+!!! tip "ÐодÑказка"
+ ÐÑли инÑеÑеÑно, Ñо "AlexNet", "ResNet" и "LeNet" - ÑÑо Ð½Ð°Ð·Ð²Ð°Ð½Ð¸Ñ Ð¼Ð¾Ð´ÐµÐ»ÐµÐ¹ маÑинного обÑÑениÑ.
+
+### ÐпÑеделение *паÑамеÑÑа пÑÑи*
+
+ÐпÑеделиÑе *паÑамеÑÑ Ð¿ÑÑи*, иÑполÑзÑÑ Ð² анноÑаÑии Ñипа клаÑÑ Ð¿ÐµÑеÑиÑÐ»ÐµÐ½Ð¸Ñ (`ModelName`), ÑозданнÑй Ñанее:
+
+```Python hl_lines="16"
+{!../../../docs_src/path_params/tutorial005.py!}
+```
+
+### ÐÑовеÑÑÑе докÑменÑаÑиÑ
+
+ÐоÑколÑÐºÑ Ð´Ð¾ÑÑÑпнÑе знаÑÐµÐ½Ð¸Ñ *паÑамеÑÑа пÑÑи* опÑÐµÐ´ÐµÐ»ÐµÐ½Ñ Ð·Ð°Ñанее, инÑеÑакÑÐ¸Ð²Ð½Ð°Ñ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ Ð¼Ð¾Ð¶ÐµÑ Ð½Ð°Ð³Ð»Ñдно иÑ
оÑобÑажаÑÑ:
+
+
+
+### РабоÑа Ñ *пеÑеÑиÑлениÑми* в Python
+
+ÐнаÑение *паÑамеÑÑа пÑÑи* бÑÐ´ÐµÑ *ÑлеменÑом пеÑеÑиÑлениÑ*.
+
+#### СÑавнение *ÑлеменÑов пеÑеÑиÑлениÑ*
+
+ÐÑ Ð¼Ð¾Ð¶ÐµÑе ÑÑавниÑÑ ÑÑо знаÑение Ñ *ÑлеменÑом пеÑеÑиÑлениÑ* клаÑÑа `ModelName`:
+
+```Python hl_lines="17"
+{!../../../docs_src/path_params/tutorial005.py!}
+```
+
+#### ÐолÑÑение *знаÑÐµÐ½Ð¸Ñ Ð¿ÐµÑеÑиÑлениÑ*
+
+Ðожно полÑÑиÑÑ ÑакÑиÑеÑкое знаÑение (в данном ÑлÑÑае - `str`) Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ `model_name.value` или в обÑем ÑлÑÑае `your_enum_member.value`:
+
+```Python hl_lines="20"
+{!../../../docs_src/path_params/tutorial005.py!}
+```
+
+!!! tip "ÐодÑказка"
+ ÐнаÑение `"lenet"` Ñакже можно полÑÑиÑÑ Ñ Ð¿Ð¾Ð¼Ð¾ÑÑÑ `ModelName.lenet.value`.
+
+#### ÐозвÑÐ°Ñ *ÑлеменÑов пеÑеÑиÑлениÑ*
+
+Ðз *опеÑаÑии пÑÑи* можно веÑнÑÑÑ *ÑлеменÑÑ Ð¿ÐµÑеÑиÑлениÑ*, даже вложеннÑе в Ñело JSON (напÑÐ¸Ð¼ÐµÑ Ð² `dict`).
+
+Ðни бÑдÑÑ Ð¿ÑеобÑÐ°Ð·Ð¾Ð²Ð°Ð½Ñ Ð² ÑооÑвеÑÑÑвÑÑÑие знаÑÐµÐ½Ð¸Ñ (в данном ÑлÑÑае - ÑÑÑоки) пеÑед иÑ
возвÑаÑом клиенÑÑ:
+
+```Python hl_lines="18 21 23"
+{!../../../docs_src/path_params/tutorial005.py!}
+```
+ÐÑ Ð¾ÑпÑавиÑе клиенÑÑ Ñакой JSON-оÑвеÑ:
+
+```JSON
+{
+ "model_name": "alexnet",
+ "message": "Deep Learning FTW!"
+}
+```
+
+## Path-паÑамеÑÑÑ, ÑодеÑжаÑие пÑÑи
+
+ÐÑедположим, ÑÑо еÑÑÑ *опеÑаÑÐ¸Ñ Ð¿ÑÑи* Ñ Ð¿ÑÑем `/files/{file_path}`.
+
+Ðо вам нÑжно, ÑÑÐ¾Ð±Ñ `file_path` Ñам ÑодеÑжал *пÑÑÑ*, напÑимеÑ, `home/johndoe/myfile.txt`.
+
+Тогда URL Ð´Ð»Ñ ÑÑого Ñайла бÑÐ´ÐµÑ Ñакой: `/files/home/johndoe/myfile.txt`.
+
+### ÐоддеÑжка OpenAPI
+
+OpenAPI не поддеÑÐ¶Ð¸Ð²Ð°ÐµÑ ÑпоÑобов обÑÑÐ²Ð»ÐµÐ½Ð¸Ñ *паÑамеÑÑа пÑÑи*, ÑодеÑжаÑего внÑÑÑи *пÑÑÑ*, Ñак как ÑÑо Ð¼Ð¾Ð¶ÐµÑ Ð¿ÑивеÑÑи к ÑÑенаÑиÑм, коÑоÑÑе Ñложно опÑеделÑÑÑ Ð¸ ÑеÑÑиÑоваÑÑ.
+
+Тем не менее ÑÑо можно ÑделаÑÑ Ð² **FastAPI**, иÑполÑзÑÑ Ð¾Ð´Ð¸Ð½ из внÑÑÑенниÑ
инÑÑÑÑменÑов Starlette.
+
+ÐокÑменÑаÑÐ¸Ñ Ð¿Ð¾-пÑÐµÐ¶Ð½ÐµÐ¼Ñ Ð±ÑÐ´ÐµÑ ÑабоÑаÑÑ, Ñ
оÑÑ Ð¸ не Ð´Ð¾Ð±Ð°Ð²Ð¸Ñ Ð½Ð¸ÐºÐ°ÐºÐ¾Ð¹ инÑоÑмаÑии о Ñом, ÑÑо паÑамеÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑодеÑжаÑÑ Ð¿ÑÑÑ.
+
+### ÐонвеÑÑÐµÑ Ð¿ÑÑи
+
+ÐлагодаÑÑ Ð¾Ð´Ð½Ð¾Ð¹ из опÑий Starlette, можеÑе обÑÑвиÑÑ *паÑамеÑÑ Ð¿ÑÑи*, ÑодеÑжаÑий *пÑÑÑ*, иÑполÑзÑÑ URL вÑоде:
+
+```
+/files/{file_path:path}
+```
+
+Ð ÑÑом ÑлÑÑае `file_path` - ÑÑо Ð¸Ð¼Ñ Ð¿Ð°ÑамеÑÑа, а ÑаÑÑÑ `:path`, ÑказÑваеÑ, ÑÑо паÑамеÑÑ Ð´Ð¾Ð»Ð¶ÐµÐ½ ÑооÑвеÑÑÑвоваÑÑ Ð»ÑÐ±Ð¾Ð¼Ñ *пÑÑи*.
+
+ÐожеÑе иÑполÑзоваÑÑ Ñак:
+
+```Python hl_lines="6"
+{!../../../docs_src/path_params/tutorial004.py!}
+```
+
+!!! tip "ÐодÑказка"
+ Ðозможно, вам понадобиÑÑÑ, ÑÑÐ¾Ð±Ñ Ð¿Ð°ÑамеÑÑ ÑодеÑжал `/home/johndoe/myfile.txt` Ñ Ð²ÐµÐ´ÑÑим ÑлÑÑем (`/`).
+
+ Ð ÑÑом ÑлÑÑае URL бÑÐ´ÐµÑ Ñаким: `/files//home/johndoe/myfile.txt`, Ñ Ð´Ð²Ð¾Ð¹Ð½Ñм ÑлÑÑем (`//`) Ð¼ÐµÐ¶Ð´Ñ `files` и `home`.
+
+## РезÑме
+ÐÑполÑзÑÑ **FastAPI** вмеÑÑе Ñо ÑÑандаÑÑнÑми обÑÑвлениÑми Ñипов Python (коÑоÑкими и инÑÑиÑивно понÑÑнÑми), Ð²Ñ Ð¿Ð¾Ð»ÑÑаеÑе:
+
+* ÐоддеÑÐ¶ÐºÑ ÑедакÑоÑа (пÑовеÑÐºÑ Ð¾Ñибок, авÑозаполнение и Ñ.п.)
+* "ÐаÑÑинг" даннÑÑ
+* ÐалидаÑÐ¸Ñ Ð´Ð°Ð½Ð½ÑÑ
+* ÐвÑомаÑиÑеÑкÑÑ Ð´Ð¾ÐºÑменÑаÑÐ¸Ñ API Ñ Ñказанием Ñипов паÑамеÑÑов.
+
+РобÑÑвлÑÑÑ ÑÐ¸Ð¿Ñ Ð´Ð¾ÑÑаÑоÑно один Ñаз.
+
+ÐÑо, веÑоÑÑно, ÑвлÑеÑÑÑ Ð³Ð»Ð°Ð²Ð½Ñм замеÑнÑм пÑеимÑÑеÑÑвом **FastAPI** по ÑÑÐ°Ð²Ð½ÐµÐ½Ð¸Ñ Ñ Ð°Ð»ÑÑеÑнаÑивнÑми ÑÑеймвоÑками (кÑоме ÑÑÑой пÑоизводиÑелÑноÑÑи).
diff --git a/docs/ru/mkdocs.yml b/docs/ru/mkdocs.yml
index 30cf3bd477..a5db79f476 100644
--- a/docs/ru/mkdocs.yml
+++ b/docs/ru/mkdocs.yml
@@ -67,6 +67,7 @@ nav:
- fastapi-people.md
- python-types.md
- УÑебник - ÑÑководÑÑво полÑзоваÑелÑ:
+ - tutorial/path-params.md
- tutorial/query-params-str-validations.md
- tutorial/path-params-numeric-validations.md
- tutorial/body-fields.md