Browse Source

Update body-fields.md

pull/11207/head
Motov Yurii 4 weeks ago
committed by GitHub
parent
commit
a356a2e69a
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 99
      docs/tr/docs/tutorial/body-fields.md

99
docs/tr/docs/tutorial/body-fields.md

@ -6,98 +6,39 @@
Öncelikle, ifadeyi içeri aktarmamız gerekir:
=== "Python 3.10+"
{* ../../docs_src/body_fields/tutorial001_an_py310.py hl[4] *}
```Python hl_lines="4"
{!> ../../../docs_src/body_fields/tutorial001_an_py310.py!}
```
/// warning | Uyarı
=== "Python 3.9+"
Fark ettiyseniz, `Field` ifadesi diğer ifadelerin (`Query`, `Path`, `Body`, vb) aksine `fastapi` paketinden değil direkt olarak `pydantic` paketinden içeri aktarılmıştır.
```Python hl_lines="4"
{!> ../../../docs_src/body_fields/tutorial001_an_py39.py!}
```
=== "Python 3.8+"
```Python hl_lines="4"
{!> ../../../docs_src/body_fields/tutorial001_an.py!}
```
=== "Python 3.10+ Annotated'sız"
!!! tip "İpucu"
Mümkün oldukça `Annotated`'lı versiyonu kullanmaya özen gösteriniz.
```Python hl_lines="2"
{!> ../../../docs_src/body_fields/tutorial001_py310.py!}
```
=== "Python 3.8+ Annotated'sız"
!!! tip "İpucu"
Mümkün oldukça `Annotated`'lı versiyonu kullanmaya özen gösteriniz.
```Python hl_lines="4"
{!> ../../../docs_src/body_fields/tutorial001.py!}
```
!!! warning "Uyarı"
Fark ettiyseniz, `Field` ifadesi diğer ifadelerin (`Query`, `Path`, `Body`, vb) aksine `fastapi` paketinden değil direkt olarak `pydantic` paketinden içeri aktarılmıştır.
///
## Model Özellikleri Tanımları
Sonrasında, `Field` ifadesini model özellikleri ile kullanabilirsiniz:
=== "Python 3.10+"
```Python hl_lines="11-14"
{!> ../../../docs_src/body_fields/tutorial001_an_py310.py!}
```
=== "Python 3.9+"
{* ../../docs_src/body_fields/tutorial001_an_py310.py hl[11:14] *}
```Python hl_lines="11-14"
{!> ../../../docs_src/body_fields/tutorial001_an_py39.py!}
```
=== "Python 3.8+"
```Python hl_lines="12-15"
{!> ../../../docs_src/body_fields/tutorial001_an.py!}
```
=== "Python 3.10+ Annotated'sız"
!!! tip "İpucu"
Mümkün oldukça `Annotated`'lı versiyonu kullanmaya özen gösteriniz.
```Python hl_lines="9-12"
{!> ../../../docs_src/body_fields/tutorial001_py310.py!}
```
`Field` ifadesi `Query`, `Path` ve `Body` ifadeleri gibi çalışır ve aynı parametrelere sahiptir vb.
=== "Python 3.8+ Annotated'sız"
/// note | Teknik Detaylar
!!! tip "İpucu"
Mümkün oldukça `Annotated`'lı versiyonu kullanmaya özen gösteriniz.
Aslında, `Query`, `Path` ve ileride göreceğiniz diğer ifadeler, Pydantic paketinde bulunan `FieldInfo` sınıfının bir alt sınıfı olan ortak `Param` sınıfının alt sınıflarının örneklerini oluştururlar.
```Python hl_lines="11-14"
{!> ../../../docs_src/body_fields/tutorial001.py!}
```
Pydantic paketindeki `Field` ifadesi de geriye bir `FieldInfo` örneği döndürür.
`Field` ifadesi `Query`, `Path` ve `Body` ifadeleri gibi çalışır ve aynı parametrelere sahiptir vb.
`Body` ifadesi de direkt olarak `FieldInfo` alt sınıfının örneklerini geriye döndürür. Bunların haricinde, ileride göreceğiniz `Body` sınıfının alt sınıfları da mevcuttur.
!!! note "Teknik Detaylar"
Aslında, `Query`, `Path` ve ileride göreceğiniz diğer ifadeler, Pydantic paketinde bulunan `FieldInfo` sınıfının bir alt sınıfı olan ortak `Param` sınıfının alt sınıflarının örneklerini oluştururlar.
Unutmayınız ki, `Query`, `Path` ve `fastapi` paketinden içeri aktardığınız diğer ifadeler, geriye özel sınıf döndüren fonksiyonlardır.
Pydantic paketindeki `Field` ifadesi de geriye bir `FieldInfo` örneği döndürür.
///
`Body` ifadesi de direkt olarak `FieldInfo` alt sınıfının örneklerini geriye döndürür. Bunların haricinde, ileride göreceğiniz `Body` sınıfının alt sınıfları da mevcuttur.
/// tip | İpucu
Unutmayınız ki, `Query`, `Path` ve `fastapi` paketinden içeri aktardığınız diğer ifadeler, geriye özel sınıf döndüren fonksiyonlardır.
Fark ettiyseniz, her model özelliğinin, *yol operasyon fonksiyonu* parametrelerindeki yapı gibi bir tipi, varsayılan değeri ve `Path`, `Query` ve `Body` ifadelerinin aksine `Field` ifadesi vardır.
!!! tip "İpucu"
Fark ettiyseniz, her model özelliğinin, *yol operasyon fonksiyonu* parametrelerindeki yapı gibi bir tipi, varsayılan değeri ve `Path`, `Query` ve `Body` ifadelerinin aksine `Field` ifadesi vardır.
///
## Ek Bilgi Tanımı
@ -105,9 +46,13 @@ Sonrasında, `Field` ifadesini model özellikleri ile kullanabilirsiniz:
Dokümantasyona ek bilgi tanımı yapmak, örnek tanımlamaları öğrenilirken irdilenecektir.
!!! warning "Uyarı"
`Field` ifadesine geçilen ek anahtarlar da uygulamanızdaki OpenAPI şemasında mevcut olacaktır.
Bu anahtarlar, OpenAPI spesifikasyonunun bir parçası olmak zorunda olmadıklarından dolayı [OpenAPI doğrulayıcısı](https://validator.swagger.io/) gibi bazı OpenAPI araçları, oluşturulan şemalar ile uyumlu çalışmayabilir.
/// warning | Uyarı
`Field` ifadesine geçilen ek anahtarlar da uygulamanızdaki OpenAPI şemasında mevcut olacaktır.
Bu anahtarlar, OpenAPI spesifikasyonunun bir parçası olmak zorunda olmadıklarından dolayı [OpenAPI doğrulayıcısı](https://validator.swagger.io/) gibi bazı OpenAPI araçları, oluşturulan şemalar ile uyumlu çalışmayabilir.
///
## Özet

Loading…
Cancel
Save