Sync fastapi docs from d3e6a293 on 2026-06-11

This commit is contained in:
The Librarian
2026-06-11 04:00:10 +00:00
parent dc0739b455
commit 2c5483ee1c
231 changed files with 2503 additions and 4501 deletions
+6 -14
View File
@@ -1,6 +1,6 @@
# LLM test dosyası { #llm-test-file }
Bu doküman, dokümantasyonu çeviren <abbr title="Large Language Model">LLM</abbr>'nin `scripts/translate.py` içindeki `general_prompt`'u ve `docs/{language code}/llm-prompt.md` içindeki dile özel prompt'u anlayıp anlamadığını test eder. Dile özel prompt, `general_prompt`'a eklenir.
Bu doküman, dokümantasyonu çeviren <abbr title="Large Language Model - Büyük Dil Modeli">LLM</abbr>'nin `scripts/translate.py` içindeki `general_prompt`'u ve `docs/{language code}/llm-prompt.md` içindeki dile özel prompt'u anlayıp anlamadığını test eder. Dile özel prompt, `general_prompt`'a eklenir.
Buraya eklenen testler, dile özel prompt'ları tasarlayan herkes tarafından görülecektir.
@@ -37,7 +37,7 @@ Code snippet'lerin içeriği olduğu gibi bırakılmalıdır.
Dün bir arkadaşım şunu yazdı: "If you spell incorrectly correctly, you have spelled it incorrectly". Ben de şunu yanıtladım: "Correct, but 'incorrectly' is incorrectly not '"incorrectly"'".
/// note | Not
/// note
LLM muhtemelen bunu yanlış çevirecektir. Yeniden çeviri yapıldığında düzeltilmiş çeviriyi koruyup korumadığı önemlidir.
@@ -124,11 +124,7 @@ Code block'ların içindeki code değiştirilmemelidir; tek istisna yorumlardır
//// tab | Test
/// info | Bilgi
Bazı metin
///
/// note | Not
/// note
Bazı metin
///
@@ -136,19 +132,15 @@ Bazı metin
Bazı metin
///
/// check | Ek bilgi
/// tip
Bazı metin
///
/// tip | İpucu
/// warning
Bazı metin
///
/// warning | Uyarı
Bazı metin
///
/// danger | Tehlike
/// danger
Bazı metin
///
@@ -30,7 +30,6 @@ Sponsor olmaları aynı zamanda FastAPI **topluluğuna** (size) güçlü bir ba
Örneğin şunları deneyebilirsiniz:
* [Speakeasy](https://speakeasy.com/editor?utm_source=fastapi+repo&utm_medium=github+sponsorship)
* [Stainless](https://www.stainless.com/?utm_source=fastapi&utm_medium=referral)
* [liblab](https://developers.liblab.com/tutorials/sdk-for-fastapi?utm_source=fastapi)
+21 -21
View File
@@ -1,6 +1,6 @@
# Alternatifler, İlham Kaynakları ve Karşılaştırmalar { #alternatives-inspiration-and-comparisons }
**FastAPI**'a nelerin ilham verdiği, alternatiflerle nasıl karşılaştırıldığı ve onlardan neler öğrendiği.
**FastAPI**'ye nelerin ilham verdiği, alternatiflerle nasıl karşılaştırıldığı ve onlardan neler öğrendiği.
## Giriş { #intro }
@@ -10,7 +10,7 @@ Başkalarının daha önceki çalışmaları olmasaydı, **FastAPI** var olmazd
Yıllarca yeni bir framework oluşturmaktan kaçındım. Önce **FastAPI**’ın bugün kapsadığı özelliklerin tamamını, birçok farklı framework, eklenti ve araçla çözmeyi denedim.
Ancak bir noktada, geçmişteki araçlardan en iyi fikirleri alıp, mümkün olan en iyi şekilde birleştiren ve daha önce mevcut olmayan dil özelliklerini (Python 3.6+ tip belirteçleri) kullanarak tüm bu özellikleri sağlayan bir şey geliştirmekten başka seçenek kalmadı.
Namun bir noktada, geçmişteki araçlardan en iyi fikirleri alıp, mümkün olan en iyi şekilde birleştiren ve daha önce mevcut olmayan dil özelliklerini (Python 3.6+ tip belirteçleri) kullanarak tüm bu özellikleri sağlayan bir şey geliştirmekten başka seçenek kalmadı.
## Daha Önce Geliştirilen Araçlar { #previous-tools }
@@ -36,7 +36,7 @@ Django REST Framework, **FastAPI**'ın üzerine inşa edildiği Starlette ve Uvi
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Otomatik API dökümantasyonu sağlayan bir web arayüzü sunmak.
@@ -56,7 +56,7 @@ Bileşenlerin ayrık olması ve gerekeni tam olarak kapsayacak şekilde genişle
Flask’ın sadeliği göz önüne alındığında, API geliştirmek için iyi bir aday gibi görünüyordu. Sırada, Flask için bir “Django REST Framework” bulmak vardı.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Gereken araç ve parçaları kolayca eşleştirip birleştirmeyi sağlayan bir mikroframework olmak.
@@ -98,7 +98,7 @@ def read_url():
`requests.get(...)` ile `@app.get(...)` arasındaki benzerliklere bakın.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
* Basit ve sezgisel bir APIya sahip olmak.
* HTTP metot isimlerini (işlemlerini) doğrudan, anlaşılır ve sezgisel bir şekilde kullanmak.
@@ -118,7 +118,7 @@ Bir noktada Swagger, Linux Foundationa devredildi ve OpenAPI olarak yeniden a
Bu yüzden, 2.0 sürümü söz konusu olduğunda “Swagger”, 3+ sürümler için ise “OpenAPI” denmesi yaygındır.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
API spesifikasyonları için özel bir şema yerine açık bir standart benimsemek ve kullanmak.
@@ -147,7 +147,7 @@ Marshmallow, bu özellikleri sağlamak için inşa edildi. Harika bir kütüphan
Ancak Python tip belirteçlerinden önce yazılmıştır. Dolayısıyla her <dfn title="verinin nasıl oluşturulması gerektiğinin tanımı">şemayı</dfn> tanımlamak için Marshmallowun sağladığı belirli yardımcılar ve sınıflar kullanılır.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Kodla, veri tiplerini ve doğrulamayı otomatik sağlayan “şemalar” tanımlamak.
@@ -169,7 +169,7 @@ Webargs, Marshmallow geliştiricileri tarafından oluşturuldu.
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Gelen istek verisini otomatik doğrulamak.
@@ -199,7 +199,7 @@ APISpec, Marshmallow geliştiricileri tarafından oluşturuldu.
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
APIlar için açık standart olan OpenAPI’ı desteklemek.
@@ -231,7 +231,7 @@ Flask-apispec, Marshmallow geliştiricileri tarafından oluşturuldu.
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Veri dönüşümü ve doğrulamayı tanımlayan aynı koddan, OpenAPI şemasını otomatik üretmek.
@@ -251,7 +251,7 @@ Ancak TypeScript tip bilgisi JavaScripte derlemeden sonra korunmadığından,
İçiçe modelleri çok iyi işleyemez. Yani istek gövdesindeki JSON, içinde başka alanları ve onlar da içiçe JSON objelerini içeriyorsa, doğru şekilde dökümante edilip doğrulanamaz.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Harika editör desteği için Python tiplerini kullanmak.
@@ -271,7 +271,7 @@ Açık kıyaslamalarda, bugün Uvicorn ve Starlettein Sanicten daha hızl
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Çok yüksek performans elde etmenin bir yolunu bulmak.
@@ -287,17 +287,17 @@ Falcon, başka bir yüksek performanslı Python framework’üdür; minimal olac
Dolayısıyla veri doğrulama, dönüşüm ve dökümantasyon kodda yapılmalı; otomatik olmaz. Ya da Hugda olduğu gibi Falconun üzerine bir framework olarak uygulanmalıdır. Falconun tasarımından etkilenen ve tek bir request objesi ile response objesini parametre olarak alan diğer frameworklerde de aynı ayrım vardır.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Harika performans elde etmenin yollarını bulmak.
Hug ile birlikte (Hug, Falcona dayanır) **FastAPI**da fonksiyonlarda opsiyonel bir `response` parametresi ilan edilmesi fikrine ilham vermek. FastAPIda bu parametre çoğunlukla header, cookie ve alternatif durum kodlarını ayarlamak için kullanılır.
Hug ile birlikte (Hug, Falcona dayanır) **FastAPI**'de fonksiyonlarda opsiyonel bir `response` parametresi ilan edilmesi fikrine ilham vermek. FastAPI'de bu parametre çoğunlukla header, cookie ve alternatif durum kodlarını ayarlamak için kullanılır.
///
### [Molten](https://moltenframework.com/) { #molten }
**FastAPI**’ı geliştirmenin ilk aşamalarında Molten’ı keşfettim. Oldukça benzer fikirleri vardı:
**FastAPI**'yi geliştirmenin ilk aşamalarında Molten’ı keşfettim. Oldukça benzer fikirleri vardı:
* Python tip belirteçlerine dayanır.
* Bu tiplere bağlı doğrulama ve dökümantasyon sağlar.
@@ -311,7 +311,7 @@ Bağımlılık enjeksiyonu sistemi, bağımlılıkların önceden kaydedilmesini
Routelar, endpointi işleyen fonksiyonun üstüne konan dekoratörlerle değil, tek bir yerde, farklı yerlerde tanımlanmış fonksiyonlar kullanılarak ilan edilir. Bu yaklaşım, Flask (ve Starlette) yerine Djangoya daha yakındır; kodda aslında birbirine sıkı bağlı olan şeyleri ayırır.
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Model özelliklerinin “varsayılan” değerlerini kullanarak veri tiplerine ekstra doğrulamalar tanımlamak. Bu, editör desteğini iyileştirir ve Pydanticte daha önce yoktu.
@@ -339,7 +339,7 @@ Hug, Python dosyalarındaki importları otomatik sıralayan harika bir araç
///
/// check | **FastAPI**'a ilham olan fikirler
/// tip | **FastAPI**'ye ilham olan fikirler
Hug, APIStar’ın bazı kısımlarına ilham verdi ve APIStar ile birlikte en umut verici bulduğum araçlardandı.
@@ -383,7 +383,7 @@ APIStar, aşağıdakilerin de yaratıcısı olan Tom Christie tarafından geliş
///
/// check | **FastAPI**'a ilham olan
/// tip | **FastAPI**'ye ilham olan
Var olmak.
@@ -407,7 +407,7 @@ Bu onu aşırı sezgisel kılar.
Marshmallow ile karşılaştırılabilir. Kıyaslamalarda Marshmallowdan daha hızlıdır. Aynı Python tip belirteçlerine dayandığı için editör desteği harikadır.
/// check | **FastAPI** bunu şurada kullanır
/// tip | **FastAPI** bunu şurada kullanır
Tüm veri doğrulama, veri dönüşümü ve JSON Schema tabanlı otomatik model dökümantasyonunu halletmekte.
@@ -450,7 +450,7 @@ Buna rağmen, şimdiden birçok araç tarafından bir “standart” olarak kull
///
/// check | **FastAPI** bunu şurada kullanır
/// tip | **FastAPI** bunu şurada kullanır
Tüm temel web kısımlarını ele almak; üzerine özellikler eklemek.
@@ -468,7 +468,7 @@ Bir web framework’ü değil, bir sunucudur. Örneğin pathlere göre yönle
Starlette ve **FastAPI** için önerilen sunucudur.
/// check | **FastAPI** bunu şöyle önerir
/// tip | **FastAPI** bunu şöyle önerir
**FastAPI** uygulamalarını çalıştırmak için ana web sunucusu.
+2 -2
View File
@@ -139,7 +139,7 @@ Aşkınla burgerleri yiyip güzel vakit geçiriyorsunuz. ✨
<img src="/img/async/concurrent-burgers/concurrent-burgers-07.png" class="illustration">
/// info | Bilgi
/// note | Bilgi
Harika çizimler: [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨
@@ -205,7 +205,7 @@ Sadece yiyorsunuz ve iş bitiyor. ⏹
Vaktin çoğu tezgâhın önünde 🕙 beklemekle geçtiğinden, pek konuşma ya da flört olmadı. 😞
/// info | Bilgi
/// note | Bilgi
Harika çizimler: [Ketrina Thompson](https://www.instagram.com/ketrinadrawsalot). 🎨
+8 -2
View File
@@ -95,7 +95,7 @@ Bu da şu koda eşdeğerdir:
from backend.main import app
```
### path ile `fastapi dev` { #fastapi-dev-with-path }
### path veya `--entrypoint` CLI seçeneği ile `fastapi dev` { #fastapi-dev-with-path-or-with-entrypoint-cli-option }
Ayrıca `fastapi dev` komutuna dosya path'ini de verebilirsiniz; hangi FastAPI app nesnesinin kullanılacağını tahmin eder:
@@ -103,7 +103,13 @@ Ayrıca `fastapi dev` komutuna dosya path'ini de verebilirsiniz; hangi FastAPI a
$ fastapi dev main.py
```
Ancak `fastapi` komutunu her çağırdığınızda doğru path'i geçmeyi hatırlamanız gerekir.
Ya da `fastapi dev` komutuna `--entrypoint` seçeneğini de verebilirsiniz:
```console
$ fastapi dev --entrypoint main:app
```
Ancak `fastapi` komutunu her çağırdığınızda doğru path'i veya entrypoint'i geçmeyi hatırlamanız gerekir.
Ayrıca, [VS Code Extension](editor-support.md) veya [FastAPI Cloud](https://fastapicloud.com) gibi diğer araçlar da bunu bulamayabilir; bu yüzden `pyproject.toml` içindeki `entrypoint`'i kullanmanız önerilir.
+1 -2
View File
@@ -63,8 +63,7 @@ second_user_data = {
my_second_user: User = User(**second_user_data)
```
/// info
/// note | Not
`**second_user_data` şu anlama gelir:
+30 -199
View File
@@ -1,16 +1,10 @@
# FastAPI'ye Yardım Et - Yardım Al { #help-fastapi-get-help }
# Yardım { #help }
**FastAPI**'yi seviyor musunuz?
FastAPI'ye yardım etmek mi istiyorsunuz, yoksa FastAPI hakkında yardım mı almak istiyorsunuz?
FastAPI'ye, diğer kullanıcılara ve yazara yardım etmek ister misiniz?
Yardım etmek ve yardım almak için çok basit yollar var.
Yoksa **FastAPI** ile ilgili yardım mı almak istiyorsunuz?
Yardım etmenin çok basit yolları var (bazıları sadece bir-iki tıklama gerektirir).
Yardım almanın da birkaç yolu var.
## Bültene abone olun { #subscribe-to-the-newsletter }
## Bültene Abone Olun { #subscribe-to-the-newsletter }
Şunlardan haberdar olmak için (seyrek yayımlanan) [**FastAPI and friends** bültenine](newsletter.md) abone olabilirsiniz:
@@ -20,17 +14,21 @@ Yardım almanın da birkaç yolu var.
* Geriye dönük uyumsuz değişiklikler 🚨
* İpuçları ve püf noktaları
## X (Twitter) üzerinden FastAPI'yi takip edin { #follow-fastapi-on-x-twitter }
## FastAPI'yi Çevrimiçi Takip Edin { #follow-fastapi-online }
[**X (Twitter)** üzerinde @fastapi hesabını takip edin](https://x.com/fastapi) ve **FastAPI** ile ilgili en güncel haberleri alın. 🐦
**FastAPI**'yi çevrimiçi olarak birkaç yerde takip edebilirsiniz:
## GitHub'da **FastAPI**'ye yıldız verin { #star-fastapi-in-github }
* [**X / Twitter**'da @fastapi](https://x.com/fastapi)
* [**Bluesky**'de @fastapi.tiangolo.com](https://bsky.app/profile/fastapi.tiangolo.com)
* [**LinkedIn**'de FastAPI](https://www.linkedin.com/company/fastapi/)
## GitHub'da **FastAPI**'ye Yıldız Verin { #star-fastapi-in-github }
GitHub'da FastAPI'ye "star" verebilirsiniz (sağ üstteki yıldız butonuna tıklayarak): [https://github.com/fastapi/fastapi](https://github.com/fastapi/fastapi). ⭐️
Yıldız verince, diğer kullanıcılar projeyi daha kolay bulabilir ve başkaları için de faydalı olduğunu görebilir.
## GitHub repository'sini release'ler için izleyin { #watch-the-github-repository-for-releases }
## Release'ler İçin GitHub Repository'sini İzleyin { #watch-the-github-repository-for-releases }
GitHub'da FastAPI'yi "watch" edebilirsiniz (sağ üstteki "watch" butonuna tıklayarak): [https://github.com/fastapi/fastapi](https://github.com/fastapi/fastapi). 👀
@@ -38,98 +36,28 @@ Orada "Releases only" seçebilirsiniz.
Böylece **FastAPI**'nin bug fix'ler ve yeni özelliklerle gelen her yeni release'inde (yeni versiyonunda) email ile bildirim alırsınız.
## Yazarla bağlantı kurun { #connect-with-the-author }
## Yazarı Takip Edin { #follow-the-author }
Yazar olan [benimle (Sebastián Ramírez / `tiangolo`)](https://tiangolo.com) bağlantı kurabilirsiniz.
FastAPI ve friends hakkında paylaşacak haberlerim olduğunda duymak için, [beni (Sebastián Ramírez / `tiangolo`)](https://tiangolo.com) birkaç yerde takip edebilirsiniz:
Şunları yapabilirsiniz:
* [**GitHub**'da @tiangolo](https://github.com/tiangolo).
* [**X (Twitter)**'da @tiangolo](https://x.com/tiangolo)
* [**Bluesky**'de @tiangolo.com](https://bsky.app/profile/tiangolo.com)
* [**LinkedIn**'de @tiangolo](https://www.linkedin.com/in/tiangolo/).
* [Beni **GitHub**'da takip edin](https://github.com/tiangolo).
* Size yardımcı olabilecek oluşturduğum diğer Open Source projelere göz atın.
* Yeni bir Open Source proje oluşturduğumda haberdar olmak için beni takip edin.
* [Beni **X (Twitter)** üzerinde](https://x.com/tiangolo) veya [Mastodon](https://fosstodon.org/@tiangolo)'da takip edin.
* FastAPI'yi nasıl kullandığınızı anlatın (bunu duymayı seviyorum).
* Duyuru yaptığımda veya yeni araçlar yayınladığımda haberdar olun.
* Ayrıca (ayrı bir hesap olan) [X (Twitter) üzerinde @fastapi hesabını da takip edebilirsiniz](https://x.com/fastapi).
* [Beni **LinkedIn**'de takip edin](https://www.linkedin.com/in/tiangolo/).
* Duyuru yaptığımda veya yeni araçlar yayınladığımda haberdar olun (gerçi X (Twitter)'ı daha sık kullanıyorum 🤷‍♂).
* [**Dev.to**](https://dev.to/tiangolo) veya [**Medium**](https://medium.com/@tiangolo) üzerinde yazdıklarımı okuyun (ya da beni takip edin).
* Diğer fikirleri, yazıları ve oluşturduğum araçlarla ilgili içerikleri okuyun.
* Yeni bir şey yayınladığımda görmek için beni takip edin.
## GitHub'da Sorularla Başkalarına Yardım Edin { #help-others-with-questions-in-github }
## **FastAPI** hakkında tweet atın { #tweet-about-fastapi }
[**FastAPI** hakkında tweet atın](https://x.com/compose/tweet?text=I'm loving @fastapi because... https://github.com/fastapi/fastapi) ve neden sevdiğinizi bana ve diğerlerine söyleyin. 🎉
**FastAPI**'nin nasıl kullanıldığını, nelerini sevdiğinizi, hangi projede/şirkette kullandığınızı vb. duymayı seviyorum.
## FastAPI için oy verin { #vote-for-fastapi }
* [Slant'ta **FastAPI** için oy verin](https://www.slant.co/options/34241/~fastapi-review).
* [AlternativeTo'da **FastAPI** için oy verin](https://alternativeto.net/software/fastapi/about/).
* [StackShare'de **FastAPI** kullandığınızı belirtin](https://stackshare.io/pypi-fastapi).
## GitHub'da sorularla başkalarına yardım edin { #help-others-with-questions-in-github }
Şuralarda insanların sorularına yardımcı olmayı deneyebilirsiniz:
* [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+)
[GitHub Discussions](https://github.com/fastapi/fastapi/discussions/categories/questions?discussions_q=category%3AQuestions+is%3Aunanswered) içindeki sorularda başkalarına yardımcı olmayı deneyebilirsiniz.
Birçok durumda bu soruların cevabını zaten biliyor olabilirsiniz. 🤓
Eğer insanların sorularına çok yardım ederseniz, resmi bir [FastAPI Expert](fastapi-people.md#fastapi-experts) olabilirsiniz. 🎉
Eğer insanların sorularına çok yardım ederseniz, resmi bir [FastAPI Expert](fastapi-people.md#fastapi-experts) olursunuz. 🎉
Şunu unutmayın: en önemli nokta, nazik olmaya çalışmak. İnsanlar çoğu zaman biriken stresle geliyor ve birçok durumda soruyu en iyi şekilde sormuyor; yine de elinizden geldiğince nazik olmaya çalışın. 🤗
Şunu unutmayın: en önemli nokta, nazik olmaya çalışmak. 🤗
Amaç, **FastAPI** topluluğunun nazik ve kapsayıcı olması. Aynı zamanda başkalarına zorbalık ya da saygısız davranışları da kabul etmeyin. Birbirimizi kollamalıyız.
### Nasıl Yardım Edebilirsiniz { #how-to-help }
---
Sorularda (discussions veya issues içinde) başkalarına yardım etmek için şunları yapabilirsiniz:
### Soruyu anlayın { #understand-the-question }
* Soru soran kişinin **amacının** ve kullanım senaryosunun ne olduğunu anlayabiliyor musunuz, kontrol edin.
* Sonra sorunun (büyük çoğunluğu soru olur) **net** olup olmadığına bakın.
* Birçok durumda kullanıcı kafasında hayali bir çözüm kurup onu sorar; ancak **daha iyi** bir çözüm olabilir. Problemi ve kullanım senaryosunu daha iyi anladıysanız daha iyi bir **alternatif çözüm** önerebilirsiniz.
* Soruyu anlayamıyorsanız daha fazla **detay** isteyin.
### Problemi yeniden üretin { #reproduce-the-problem }
Çoğu durumda ve çoğu soruda, kişinin **orijinal kodu** ile ilgili bir şey vardır.
Birçok kişi sadece kodun bir parçasını kopyalar, ama bu **problemi yeniden üretmek** için yeterli olmaz.
* Çalıştırıp aynı hatayı/davranışı görebileceğiniz veya kullanım senaryosunu daha iyi anlayabileceğiniz, yerelde **kopyala-yapıştır** yaparak çalıştırılabilen bir [minimal, reproducible, example](https://stackoverflow.com/help/minimal-reproducible-example) paylaşmalarını isteyebilirsiniz.
* Çok cömert hissediyorsanız, problemi anlatan açıklamadan yola çıkarak kendiniz de böyle bir **örnek oluşturmayı** deneyebilirsiniz. Ancak bunun çok zaman alabileceğini unutmayın; çoğu zaman önce problemi netleştirmelerini istemek daha iyidir.
### Çözüm önerin { #suggest-solutions }
* Soruyu anlayabildikten sonra olası bir **cevap** verebilirsiniz.
* Çoğu durumda, yapmak istediklerinden ziyade alttaki **asıl problemi veya kullanım senaryosunu** anlamak daha iyidir; çünkü denedikleri yöntemden daha iyi bir çözüm yolu olabilir.
### Kapatılmasını isteyin { #ask-to-close }
Eğer yanıt verirlerse, büyük ihtimalle problemi çözmüşsünüzdür, tebrikler, **kahramansınız**! 🦸
* Eğer çözüm işe yaradıysa şunları yapmalarını isteyebilirsiniz:
* GitHub Discussions'ta: ilgili yorumu **answer** olarak işaretlemeleri.
* GitHub Issues'ta: issue'yu **close** etmeleri.
## GitHub repository'sini izleyin { #watch-the-github-repository }
GitHub'da FastAPI'yi "watch" edebilirsiniz (sağ üstteki "watch" butonuna tıklayarak): [https://github.com/fastapi/fastapi](https://github.com/fastapi/fastapi). 👀
"Releases only" yerine "Watching" seçerseniz biri yeni bir issue veya soru oluşturduğunda bildirim alırsınız. Ayrıca sadece yeni issue'lar, ya da discussions, ya da PR'lar vb. için bildirim almak istediğinizi belirtebilirsiniz.
Sonra da bu soruları çözmelerine yardımcı olmayı deneyebilirsiniz.
[Nasıl yardım edileceğine dair rehberi](https://tiangolo.com/open-source/help/#help-others-with-questions-in-github) izleyin.
## Soru Sorun { #ask-questions }
@@ -138,119 +66,22 @@ GitHub repository'sinde örneğin şunlar için [yeni bir soru oluşturabilirsin
* Bir **soru** sorun veya bir **problem** hakkında danışın.
* Yeni bir **feature** önerin.
**Not**: Bunu yaparsanız, ben de sizden başkalarına yardım etmenizi isteyeceğim. 😉
## Pull Request'leri İnceleyin { #review-pull-requests }
Başkalarının gönderdiği pull request'leri incelememde bana yardımcı olabilirsiniz.
Yine, lütfen elinizden geldiğince nazik olmaya çalışın. 🤗
---
Bir pull request'i incelerken akılda tutmanız gerekenler:
### Problemi anlayın { #understand-the-problem }
* Önce, pull request'in çözmeye çalıştığı **problemi anladığınızdan** emin olun. GitHub Discussion veya issue içinde daha uzun bir tartışması olabilir.
* Pull request'in aslında hiç gerekmiyor olma ihtimali de yüksektir; çünkü problem **farklı bir şekilde** çözülebilir. Bu durumda bunu önerebilir veya bununla ilgili soru sorabilirsiniz.
### Style konusunda çok dert etmeyin { #dont-worry-about-style }
* Commit message tarzı gibi şeyleri çok dert etmeyin; ben commit'leri manuel olarak düzenleyerek squash and merge yapacağım.
* Style kuralları için de endişelenmeyin; bunları kontrol eden otomatik araçlar zaten var.
Ek bir style veya tutarlılık ihtiyacı olursa, bunu doğrudan isterim ya da gerekli değişikliklerle üstüne commit eklerim.
### Kodu kontrol edin { #check-the-code }
* Kodu okuyup kontrol edin; mantıklı mı bakın, **yerelde çalıştırın** ve gerçekten problemi çözüyor mu görün.
* Ardından bunu yaptığınızı belirten bir **yorum** yazın; böylece gerçekten kontrol ettiğinizi anlarım.
/// info | Bilgi
Ne yazık ki sadece birkaç onayı olan PR'lara körü körüne güvenemem.
Defalarca, 3, 5 veya daha fazla onayı olan PR'lar oldu; muhtemelen açıklaması çekici olduğu için onay aldılar. Ama PR'lara baktığımda aslında bozuk olduklarını, bug içerdiğini veya iddia ettikleri problemi çözmediklerini gördüm. 😅
Bu yüzden kodu gerçekten okuyup çalıştırmanız ve bunu yorumlarda bana bildirmeniz çok önemli. 🤓
///
* PR bir şekilde basitleştirilebiliyorsa bunu isteyebilirsiniz. Ancak çok didik didik etmeye gerek yok; konuya göre birçok öznel bakış açısı olabilir (benim de olacaktır 🙈). Bu yüzden temel noktalara odaklanmak daha iyi.
### Testler { #tests }
* PR'da **testler** olduğunu kontrol etmemde bana yardımcı olun.
* PR'dan önce testlerin **fail** ettiğini kontrol edin. 🚨
* PR'dan sonra testlerin **pass** ettiğini kontrol edin. ✅
* Birçok PR test içermez; test eklemelerini **hatırlatabilirsiniz** veya hatta kendiniz bazı testler **önerebilirsiniz**. Bu, en çok zaman alan işlerden biridir ve burada çok yardımcı olabilirsiniz.
* Ayrıca neleri denediğinizi yorumlara yazın; böylece kontrol ettiğinizi anlarım. 🤓
## Pull Request Oluşturun { #create-a-pull-request }
Örneğin şunlar için Pull Request'lerle kaynak koda [katkıda bulunabilirsiniz](contributing.md):
* Dokümantasyonda bulduğunuz bir yazım hatasını düzeltmek.
* FastAPI hakkında oluşturduğunuz veya bulduğunuz bir makaleyi, videoyu ya da podcast'i [bu dosyayı düzenleyerek](https://github.com/fastapi/fastapi/edit/master/docs/en/data/external_links.yml) paylaşmak.
* Link'inizi ilgili bölümün başına eklediğinizden emin olun.
* Dokümantasyonu kendi dilinize [çevirmeye yardımcı olmak](contributing.md#translations).
* Başkalarının yaptığı çevirileri gözden geçirmeye de yardımcı olabilirsiniz.
* Yeni dokümantasyon bölümleri önermek.
* Mevcut bir issue/bug'ı düzeltmek.
* Test eklediğinizden emin olun.
* Yeni bir feature eklemek.
* Test eklediğinizden emin olun.
* İlgiliyse dokümantasyon da eklediğinizden emin olun.
## FastAPI'nin Bakımına Yardım Edin { #help-maintain-fastapi }
**FastAPI**'nin bakımını yapmama yardımcı olun! 🤓
Yapılacak çok iş var ve bunların çoğunu **SİZ** yapabilirsiniz.
Şu anda yapabileceğiniz ana işler:
* [GitHub'da sorularla başkalarına yardım edin](#help-others-with-questions-in-github) (yukarıdaki bölüme bakın).
* [Pull Request'leri inceleyin](#review-pull-requests) (yukarıdaki bölüme bakın).
Bu iki iş, **en çok zamanı alan** işlerdir. FastAPI bakımının ana yükü buradadır.
Burada yardımcı olursanız, **FastAPI'nin bakımını yapmama yardım etmiş** ve daha **hızlı ve daha iyi ilerlemesini** sağlamış olursunuz. 🚀
## Sohbete katılın { #join-the-chat }
## Sohbete Katılın { #join-the-chat }
FastAPI topluluğundan diğer kişilerle takılmak için 👥 [Discord chat server](https://discord.gg/VQjSZaeJmf) 👥 sohbetine katılın.
/// tip | İpucu
Sorular için [GitHub Discussions](https://github.com/fastapi/fastapi/discussions/new?category=questions)'a sorun; [FastAPI Experts](fastapi-people.md#fastapi-experts) tarafından yardım alma ihtimaliniz çok daha yüksektir.
Sorular için GitHub Discussions'ta sorun; yardım alma ihtimaliniz çok daha yüksektir.
Chat'i sadece genel sohbetler için kullanın.
Chat'i sadece diğer genel sohbetler için kullanın.
///
### Sorular için chat'i kullanmayın { #dont-use-the-chat-for-questions }
### Sorular İçin Chat'i Kullanmayın { #dont-use-the-chat-for-questions }
Chat sistemleri daha "serbest sohbet"e izin verdiği için, çok genel ve yanıtlaması daha zor sorular sormak kolaylaşır; bu nedenle cevap alamayabilirsiniz.
GitHub'da ise şablon (template) doğru soruyu yazmanız için sizi yönlendirir; böylece daha kolay iyi bir cevap alabilir, hatta bazen sormadan önce problemi kendiniz çözebilirsiniz. Ayrıca GitHub'da (zaman alsa bile) her şeye mutlaka cevap verdiğimden emin olabilirim. Chat sistemlerinde bunu kişisel olarak yapamam. 😅
GitHub'da şablon (template) doğru soruyu yazmanız için sizi yönlendirir; böylece daha kolay iyi bir cevap alabilir, hatta bazen sormadan önce problemi kendiniz çözebilirsiniz.
Chat sistemlerindeki konuşmalar GitHub kadar kolay aranabilir değildir; bu yüzden soru ve cevaplar sohbet içinde kaybolabilir. Ayrıca [FastAPI Expert](fastapi-people.md#fastapi-experts) olmak için sadece GitHub'daki katkılar sayılır; dolayısıyla büyük olasılıkla GitHub'da daha fazla ilgi görürsünüz.
Öte yandan chat sistemlerinde binlerce kullanıcı vardır; bu yüzden neredeyse her zaman konuşacak birini bulma ihtimaliniz yüksektir. 😄
## Yazara sponsor olun { #sponsor-the-author }
Eğer **ürününüz/şirketiniz** **FastAPI**'ye bağlıysa veya onunla ilişkiliyse ve FastAPI kullanıcılarına ulaşmak istiyorsanız, [GitHub sponsors](https://github.com/sponsors/tiangolo) üzerinden yazara (bana) sponsor olabilirsiniz. Tier'a göre dokümantasyonda bir rozet gibi ek faydalar elde edebilirsiniz. 🎁
---
Teşekkürler! 🚀
Ayrıca chat sistemlerindeki konuşmalar GitHub kadar kolay aranabilir değildir; sohbet içinde kaybolurlar.
+67 -27
View File
@@ -1,3 +1,8 @@
---
include_yaml:
sponsors: data/sponsors.yml
---
# FastAPI { #fastapi }
<style>
@@ -54,18 +59,27 @@ Temel özellikleri şunlardır:
### Keystone Sponsor { #keystone-sponsor }
<div class="fastapi-sponsors fastapi-sponsors--keystone">
{% for sponsor in sponsors.keystone -%}
<a href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}" style="border-radius:15px"></a>
<a class="fastapi-sponsors__card fastapi-sponsors__card--keystone" href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img class="fastapi-sponsors__banner" src="{{ sponsor.img }}" alt="{{ sponsor.title }}"></a>
{% endfor -%}
</div>
### Gold and Silver Sponsors { #gold-and-silver-sponsors }
### Gold Sponsorlar { #gold-sponsors }
<div class="fastapi-sponsors fastapi-sponsors--gold">
{% for sponsor in sponsors.gold -%}
<a href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}" style="border-radius:15px"></a>
<a class="fastapi-sponsors__card fastapi-sponsors__card--gold" href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img class="fastapi-sponsors__banner" src="{{ sponsor.img }}" alt="{{ sponsor.title }}" loading="lazy"></a>
{% endfor -%}
{%- for sponsor in sponsors.silver -%}
<a href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img src="{{ sponsor.img }}" style="border-radius:15px"></a>
</div>
### Silver Sponsorlar { #silver-sponsors }
<div class="fastapi-sponsors fastapi-sponsors--silver">
{% for sponsor in sponsors.silver -%}
<a class="fastapi-sponsors__card fastapi-sponsors__card--silver" href="{{ sponsor.url }}" title="{{ sponsor.title }}"><img class="fastapi-sponsors__banner" src="{{ sponsor.img }}" alt="{{ sponsor.title }}" loading="lazy"></a>
{% endfor %}
</div>
<!-- /sponsors -->
@@ -73,13 +87,51 @@ Temel özellikleri şunlardır:
## Görüşler { #opinions }
<!-- only-mkdocs -->
<div class="fastapi-opinions" data-fastapi-opinions>
<div class="fastapi-opinions__tabs" role="tablist" aria-label="Companies using FastAPI">
<button class="fastapi-opinions__tab" role="tab" type="button" id="fo-tab-microsoft" aria-controls="fo-panel-microsoft" aria-selected="true" tabindex="0">
<span class="fastapi-opinions__mark"><img src="/img/logos/microsoft.svg" alt="Microsoft" loading="lazy"></span>
</button>
<button class="fastapi-opinions__tab" role="tab" type="button" id="fo-tab-uber" aria-controls="fo-panel-uber" aria-selected="false" tabindex="-1">
<span class="fastapi-opinions__mark"><img src="/img/logos/uber.svg" alt="Uber" loading="lazy"></span>
</button>
<button class="fastapi-opinions__tab" role="tab" type="button" id="fo-tab-netflix" aria-controls="fo-panel-netflix" aria-selected="false" tabindex="-1">
<span class="fastapi-opinions__mark"><img src="/img/logos/netflix.svg" alt="Netflix" loading="lazy"></span>
</button>
<button class="fastapi-opinions__tab" role="tab" type="button" id="fo-tab-cisco" aria-controls="fo-panel-cisco" aria-selected="false" tabindex="-1">
<span class="fastapi-opinions__mark"><img src="/img/logos/cisco.svg" alt="Cisco" loading="lazy"></span>
</button>
</div>
<div class="fastapi-opinions__panel" id="fo-panel-microsoft" role="tabpanel" aria-labelledby="fo-tab-microsoft" tabindex="0">
<blockquote class="fastapi-opinions__quote">"Bugünlerde <strong>FastAPI</strong>'ı çok fazla kullanıyorum. Aslında ekibimin tamamındaki <strong>Microsoft'taki ML servisleri</strong> için kullanmayı planlıyorum. Bunların bazıları çekirdek <strong>Windows</strong> ürününe ve bazıları da <strong>Office</strong> ürünlerine entegre ediliyor."</blockquote>
<div class="fastapi-opinions__attr">— Kabir Khan, <strong>Microsoft</strong> <a href="https://github.com/fastapi/fastapi/pull/26">(ref)</a></div>
</div>
<div class="fastapi-opinions__panel" id="fo-panel-uber" role="tabpanel" aria-labelledby="fo-tab-uber" tabindex="0" hidden>
<blockquote class="fastapi-opinions__quote">"<strong>FastAPI</strong> kütüphanesini, sorgulanarak <strong>tahminler</strong> alınabilecek bir <strong>REST</strong> server başlatmak için benimsedik." <em>[Ludwig için]</em></blockquote>
<div class="fastapi-opinions__attr">— Piero Molino, Yaroslav Dudin, Sai Sumanth Miryala, <strong>Uber</strong> <a href="https://eng.uber.com/ludwig-v0-2/">(ref)</a></div>
</div>
<div class="fastapi-opinions__panel" id="fo-panel-netflix" role="tabpanel" aria-labelledby="fo-tab-netflix" tabindex="0" hidden>
<blockquote class="fastapi-opinions__quote">"<strong>Netflix</strong> olarak <strong>kriz yönetimi</strong> orkestrasyon framework'ümüzün açık kaynak sürümünü duyurmaktan memnuniyet duyuyoruz: <strong>Dispatch</strong>!" <em>[FastAPI ile geliştirildi]</em></blockquote>
<div class="fastapi-opinions__attr">— Kevin Glisson, Marc Vilanova, Forest Monsen, <strong>Netflix</strong> <a href="https://netflixtechblog.com/introducing-dispatch-da4b8a2a8072">(ref)</a></div>
</div>
<div class="fastapi-opinions__panel" id="fo-panel-cisco" role="tabpanel" aria-labelledby="fo-tab-cisco" tabindex="0" hidden>
<blockquote class="fastapi-opinions__quote">"Production'da bir Python API geliştirmek isteyen herkese <strong>FastAPI</strong>'ı şiddetle tavsiye ederim. <strong>Harika tasarlanmış</strong>, <strong>kullanımı basit</strong> ve <strong>yüksek ölçekte çalışabilir</strong> — API-first geliştirme stratejimizin <strong>kilit bir bileşeni</strong> haline geldi."</blockquote>
<div class="fastapi-opinions__attr">— Deon Pillsbury, <strong>Cisco</strong> <a href="https://www.linkedin.com/posts/deonpillsbury_cisco-cx-python-activity-6963242628536487936-trAp/">(ref)</a></div>
</div>
</div>
<!-- /only-mkdocs -->
<div class="only-github" markdown="1">
"_[...] Bugünlerde **FastAPI**'ı çok fazla kullanıyorum. [...] Aslında bunu ekibimin **Microsoft'taki ML servislerinin** tamamında kullanmayı planlıyorum. Bunlardan bazıları ana **Windows** ürününe ve bazı **Office** ürünlerine entegre ediliyor._"
<div style="text-align: right; margin-right: 10%;">Kabir Khan - <strong>Microsoft</strong> <a href="https://github.com/fastapi/fastapi/pull/26"><small>(ref)</small></a></div>
---
"_**predictions** almak için sorgulanabilecek bir **REST** server oluşturmak amacıyla **FastAPI** kütüphanesini benimsedik. [Ludwig için]_"
"_**FastAPI** kütüphanesini, **predictions** almak için sorgulanabilecek bir **REST** server oluşturmak amacıyla benimsedik. [Ludwig için]_"
<div style="text-align: right; margin-right: 10%;">Piero Molino, Yaroslav Dudin, and Sai Sumanth Miryala - <strong>Uber</strong> <a href="https://eng.uber.com/ludwig-v0-2/"><small>(ref)</small></a></div>
@@ -91,37 +143,25 @@ Temel özellikleri şunlardır:
---
"_**FastAPI** için ayın üzerindeymişcesine heyecanlıyım. Çok eğlenceli!_"
<div style="text-align: right; margin-right: 10%;">Brian Okken - <strong>[Python Bytes](https://pythonbytes.fm/episodes/show/123/time-to-right-the-py-wrongs?time_in_sec=855) podcast host</strong> <a href="https://x.com/brianokken/status/1112220079972728832"><small>(ref)</small></a></div>
---
"_Dürüst olmak gerekirse, inşa ettiğiniz şey gerçekten sağlam ve profesyonel görünüyor. Birçok açıdan, **Hug**'ın olmasını istediğim şey tam da bu - böyle bir şeyi inşa eden birini görmek gerçekten ilham verici._"
<div style="text-align: right; margin-right: 10%;">Timothy Crosley - <strong>[Hug](https://github.com/hugapi/hug) yaratıcısı</strong> <a href="https://news.ycombinator.com/item?id=19455465"><small>(ref)</small></a></div>
---
"_REST API'lar geliştirmek için **modern bir framework** öğrenmek istiyorsanız, **FastAPI**'a bir göz atın [...] Hızlı, kullanımı ve öğrenmesi kolay [...]_"
"_**API**'larımız için **FastAPI**'a geçtik [...] Bence hoşunuza gidecek [...]_"
<div style="text-align: right; margin-right: 10%;">Ines Montani - Matthew Honnibal - <strong>[Explosion AI](https://explosion.ai) kurucuları - [spaCy](https://spacy.io) yaratıcıları</strong> <a href="https://x.com/_inesmontani/status/1144173225322143744"><small>(ref)</small></a> - <a href="https://x.com/honnibal/status/1144031421859655680"><small>(ref)</small></a></div>
---
"_Production'da Python API geliştirmek isteyen herkese **FastAPI**'ı şiddetle tavsiye ederim. **Harika tasarlanmış**, **kullanımı kolay** ve **yüksek ölçeklenebilir**; API-first geliştirme stratejimizin **kilit bir bileşeni** haline geldi ve Virtual TAC Engineer gibi birçok otomasyon ve servise güç veriyor._"
<div style="text-align: right; margin-right: 10%;">Deon Pillsbury - <strong>Cisco</strong> <a href="https://www.linkedin.com/posts/deonpillsbury_cisco-cx-python-activity-6963242628536487936-trAp/"><small>(ref)</small></a></div>
---
</div>
## FastAPI Conf { #fastapi-conf }
[**FastAPI Conf '26**](https://fastapiconf.com) **28 Ekim 2026**'da **Amsterdam, NL**'de gerçekleşiyor. Kaynağından, bütünüyle FastAPI. 🎤
<a class="fastapi-feature-banner" href="https://fastapiconf.com"><img src="https://fastapi.tiangolo.com/img/fastapi-conf.jpeg" alt="FastAPI Conf '26 - 28 Ekim 2026 - Amsterdam, NL"></a>
## FastAPI mini belgeseli { #fastapi-mini-documentary }
2025'in sonunda yayınlanan bir [FastAPI mini belgeseli](https://www.youtube.com/watch?v=mpR8ngthqiE) var, online olarak izleyebilirsiniz:
<a href="https://www.youtube.com/watch?v=mpR8ngthqiE"><img src="https://fastapi.tiangolo.com/img/fastapi-documentary.jpg" alt="FastAPI Mini Documentary"></a>
<a class="fastapi-feature-banner" href="https://www.youtube.com/watch?v=mpR8ngthqiE"><img src="https://fastapi.tiangolo.com/img/fastapi-documentary.jpg" alt="FastAPI Mini Documentary"></a>
## CLI'ların FastAPI'ı: **Typer** { #typer-the-fastapi-of-clis }
+3 -3
View File
@@ -172,7 +172,7 @@ Tip olarak `list` yazın.
{* ../../docs_src/python_types/tutorial006_py310.py hl[1] *}
/// info | Bilgi
/// note | Not
Köşeli parantez içindeki bu iç tiplere "type parameters" denir.
@@ -283,7 +283,7 @@ Resmî Pydantic dokümanlarından bir örnek:
{* ../../docs_src/python_types/tutorial011_py310.py *}
/// info | Bilgi
/// note | Not
Daha fazlasını öğrenmek için [Pydantic'in dokümanlarına bakın](https://docs.pydantic.dev/).
@@ -341,7 +341,7 @@ Bunların hepsi kulağa soyut gelebilir. Merak etmeyin. Tüm bunları [Eğitim -
Önemli olan, standart Python tiplerini tek bir yerde kullanarak (daha fazla sınıf, decorator vb. eklemek yerine), **FastAPI**'nin sizin için işin büyük kısmını yapmasıdır.
/// info | Bilgi
/// note | Not
Tüm tutorial'ı zaten bitirdiyseniz ve tipler hakkında daha fazlasını görmek için geri döndüyseniz, iyi bir kaynak: [`mypy`'nin "cheat sheet"i](https://mypy.readthedocs.io/en/latest/cheat_sheet_py3.html).
+7 -7
View File
@@ -4,7 +4,7 @@ Bir uygulama veya web API geliştirirken, her şeyi tek bir dosyaya sığdırabi
**FastAPI**, tüm esnekliği korurken uygulamanızı yapılandırmanıza yardımcı olan pratik bir araç sunar.
/// info | Bilgi
/// note | Not
Flask'ten geliyorsanız, bu yapı Flask'in Blueprints'ine denk gelir.
@@ -138,7 +138,7 @@ Diyelim ki uygulamanızdaki "items" ile ilgili endpoint'ler de `app/routers/item
Bu, `app/routers/users.py` ile aynı yapıdadır.
Ancak biraz daha akıllı davranıp kodu sadeleştirmek istiyoruz.
Namun biraz daha akıllı davranıp kodu sadeleştirmek istiyoruz.
Bu moduledeki tüm *path operation*ların şu ortak özelliklere sahip olduğunu biliyoruz:
@@ -194,7 +194,7 @@ Sonuç olarak item pathleri artık:
///
/// check | Ek bilgi
/// tip | İpucu
`prefix`, `tags`, `responses` ve `dependencies` parametreleri (çoğu başka örnekte olduğu gibi) kod tekrarını önlemenize yardımcı olan, **FastAPI**nin bir özelliğidir.
@@ -339,7 +339,7 @@ Ayrıca şöyle de import edebilirdik:
from app.routers import items, users
```
/// info | Bilgi
/// note | Not
İlk sürüm "relative import"tur:
@@ -382,7 +382,7 @@ Bu yüzden ikisini de aynı dosyada kullanabilmek için submoduleleri doğrud
{* ../../docs_src/bigger_applications/app_an_py310/main.py hl[10:11] title["app/main.py"] *}
/// info | Bilgi
/// note | Not
`users.router`, `app/routers/users.py` dosyasının içindeki `APIRouter`’ı içerir.
@@ -402,7 +402,7 @@ Yani perde arkasında, her şey tek bir uygulamaymış gibi çalışır.
///
/// check | Ek bilgi
/// tip | İpucu
Routerları dahil ederken performans konusunda endişelenmeniz gerekmez.
@@ -451,7 +451,7 @@ Burada bunu yapıyoruz... sadece yapabildiğimizi göstermek için 🤷:
ve `app.include_router()` ile eklenen diğer tüm *path operation*larla birlikte doğru şekilde çalışır.
/// info | Çok Teknik Detaylar
/// note | Çok Teknik Detaylar
**Not**: Bu oldukça teknik bir detay; büyük ihtimalle **direkt geçebilirsiniz**.
+1 -1
View File
@@ -72,7 +72,7 @@ Bu yüzden şu satır:
çalıştırılmaz.
/// info | Bilgi
/// note | Not
Daha fazla bilgi için [resmi Python dokümantasyonuna](https://docs.python.org/3/library/__main__.html) bakın.
+1 -1
View File
@@ -24,7 +24,7 @@ Ancak şunu unutmayın: `fastapi`'den `Query`, `Path`, `Header` ve diğerlerini
///
/// info | Bilgi
/// note | Not
Header'ları tanımlamak için `Header` kullanmanız gerekir; aksi halde parametreler query parametreleri olarak yorumlanır.
+13 -13
View File
@@ -2,7 +2,7 @@
Python projeleriyle çalışırken, her proje için kurduğunuz package'leri birbirinden izole etmek adına büyük ihtimalle bir **virtual environment** (veya benzer bir mekanizma) kullanmalısınız.
/// info | Bilgi
/// note | Not
Virtual environment'leri, nasıl oluşturulduklarını ve nasıl kullanıldıklarını zaten biliyorsanız bu bölümü atlamak isteyebilirsiniz. 🤓
@@ -18,7 +18,7 @@ Virtual environment'leri, nasıl oluşturulduklarını ve nasıl kullanıldıkla
///
/// info | Bilgi
/// note | Not
Bu sayfada **virtual environment**'leri nasıl kullanacağınızı ve nasıl çalıştıklarını öğreneceksiniz.
@@ -37,15 +37,15 @@ Sonra bunun içinde her proje için ayrı bir klasör oluştururum.
<div class="termy">
```console
// Go to the home directory
// Gelelim home dizinine
$ cd
// Create a directory for all your code projects
// Tüm kod projeleriniz için bir klasör oluşturun
$ mkdir code
// Enter into that code directory
// Bu code klasörüne girin
$ cd code
// Create a directory for this project
// Bu proje için bir klasör oluşturun
$ mkdir awesome-project
// Enter into that project directory
// Proje klasörüne girin
$ cd awesome-project
```
@@ -555,7 +555,7 @@ Bu klasörlerin bir kısmı, kurduğunuz tüm package'leri barındırmaktan soru
<div class="termy">
```console
// Don't run this now, it's just an example 🤓
// Bunu şimdi çalıştırmayın, bu sadece bir örnek 🤓
$ pip install "fastapi[standard]"
---> 100%
```
@@ -809,7 +809,7 @@ $ cd ~/code/prisoner-of-azkaban
$ python main.py
// Error importing sirius, it's not installed 😱
// sirius import edilirken hata, kurulu değil 😱
Traceback (most recent call last):
File "main.py", line 1, in <module>
import sirius
@@ -817,20 +817,20 @@ Traceback (most recent call last):
</div>
Ama virtual environment'i deactivate edip `prisoner-of-askaban` için yeni olanı aktive ederseniz, `python` çalıştırdığınızda `prisoner-of-azkaban` içindeki virtual environment'dan gelen Python kullanılır.
Ama virtual environment'i deactivate edip `prisoner-of-azkaban` için yeni olanı aktive ederseniz, `python` çalıştırdığınızda `prisoner-of-azkaban` içindeki virtual environment'dan gelen Python kullanılır.
<div class="termy">
```console
$ cd ~/code/prisoner-of-azkaban
// You don't need to be in the old directory to deactivate, you can do it wherever you are, even after going to the other project 😎
// Deactivate etmek için eski klasörde olmanız gerekmez; nerede olursanız olun, hatta diğer projeye geçtikten sonra bile yapabilirsiniz 😎
$ deactivate
// Activate the virtual environment in prisoner-of-azkaban/.venv 🚀
// prisoner-of-azkaban/.venv içindeki virtual environment'i aktive edin 🚀
$ source .venv/bin/activate
// Now when you run python, it will find the package sirius installed in this virtual environment
// Artık python çalıştırdığınızda, bu virtual environment'e kurulu olan sirius package'ini bulacak
$ python main.py
I solemnly swear 🐺
-1
View File
@@ -1 +0,0 @@
INHERIT: ../en/mkdocs.yml