از Pista Academy حمایت کنید
برای مشاهده سایر جلسات و ادامه یادگیری، وارد صفحه دوره شوید.
خلاصه آموزشی
مرور سریع مفاهیم اصلی پیش از تماشای کامل یا برای جمعبندی بعد از آموزش.
در جلسه دوم دوره جامع فریم ورک FastAPI، مدرس به بررسی نحوه استفاده از پارامترهای داینامیک در اند پوینتهای FastAPI میپردازد. در این جلسه، نمونهای از استفاده از این پارامترها در ارائه لیست کتابها با استفاده از یک نویسنده خاص ارائه شده است. همچنین، نحوه استفاده از پارامترهایی که در یوآرل دریافت میشوند، برای فیلتر کردن دادهها و ارائه نتیجه مرتبط با آنها توضیح داده شده است.
نکات کلیدی
استفاده از پارامترهای داینامیک در اند پوینتهای FastAPI برای ارائه دادههای مرتبط با ورودی کاربر.
نمونهای از فیلتر کردن لیست کتابها با استفاده از پارامترهایی مانند نام کتاب یا نویسنده.
نحوه دریافت و استفاده از پارامترهایی که در یوآرل ارائه میشوند.
روش ارائه دادههای مرتبط با ورودی کاربر با استفاده از پارامترهای داینامیک.
پرسشهای رایج
پاسخ کوتاه و مستقیم به پرسشهایی که معمولاً هنگام یادگیری این موضوع مطرح میشوند.
برای استفاده از پارامترهای داینامیک در FastAPI، میتوان از دستورات مانند `Path` یا `Query` استفاده کرد تا پارامترهایی که در یوآرل ارائه میشوند را دریافت و به کار برد.
پارامترهای داینامیک در اند پوینتهای FastAPI به کاربران امکان میدهند تا دادههای مرتبط با ورودی خود را دریافت کنند، مانند فیلتر کردن لیست کتابها با استفاده از نام کتاب یا نویسنده.
میتوان از پارامترهایی مانند `Query` یا `Path` استفاده کرد تا پارامترهایی که در یوآرل ارائه میشوند را دریافت و در فرآیند فیلتر کردن یا ارائه دادهها به کار برد.
آخرین بهروزرسانی محتوای متنی:
دوره جامع FastAPI از صفر تا استقرار در دنیای واقعی اگر دنبال ساخت APIهای حرفهای، سریع و امن با پایتون هستی، این دوره دقیقاً برای توست. قدمبهقدم از مبانی شروع میکنیم و تا پیادهسازی در محیط تولید (Production) پیش میرویم: از راهاندازی و طراحی Endpointها، پایگاهداده، احراز هویت و مجوزها، تستنویسی و مهاجرت دیتابیس تا نسخهسازی با Git و دیپلوی نهایی. این دوره چه چیزهایی بهت میدهد؟ شناخت کامل FastAPI و مزیتهایش (سرعت بالا، تایپهینتها، مستندسازی خودکار، async) ساخت RESTful APIهای تمیز و ماژولار با الگوهای حرفهای پیادهسازی لایههای Authentication & Authorization (مانند توکنهای JWT و نقشها) اتصال به پایگاهداده و آمادهسازی Database برای تولید به همراه مفاهیم اساسی Performance و ایمنی داده انجام مهاجرتهای دیتابیس (Alembic) بدون از دست رفتن داده Unit & Integration Testing برای اطمینان از کیفیت کد ساخت یک اپلیکیشن فولاستک با API بکاند FastAPI و یک فرانتاند رایج مدیریت نسخهها و گردشکار تیمی با Git Deploy امن و استاندارد روی سرور یا سرویسهای ابری 🎯 مخاطبان این دوره برنامهنویسان پایتون که میخواهند APIهای سریع و مقیاسپذیر بسازند بکاند دولوپرهایی که به دنبال Production-Ready FastAPI هستند دانشجویان یا فریلنسرهایی که میخواهند با نمونهکارهای واقعی، وارد بازار کار شوند پیشنیاز: آشنایی پایه با پایتون (متغیرها، توابع، ماژولها). بقیه را در خود دوره یاد میگیری. خروجی نهایی تو پس از دوره یک بکاند استاندارد و Production-Ready با FastAPI تسلط بر احراز هویت و مجوزها و الگوهای امنیتی رایج مهارت در مهاجرتهای دیتابیس و نگهداری داده در طول توسعه توانایی نوشتن تست برای اطمینان از کیفیت و کاهش ریسک تجربه ساخت یک پروژه فولاستک برای رزومه و پرتفولیو آمادگی برای دیپلوی و نگهداری سرویس در محیط واقعی چرا این دوره متفاوت است؟ پروژهمحور و کاملاً عملی؛ هر فصل یک خروجی ملموس میسازد تمرکز روی آنچیزی که در محیط تولید واقعاً به آن نیاز داری سادگی بیان + استانداردهای حرفهای = یادگیری سریع اما اصولی چطور از دوره استفاده کنم؟ ویدیوها را به ترتیب ببین و همزمان کدنویسی کن هر فصل یک Feature واقعی بساز در انتها آمادهای کدت را روی سرور/ابر بالا بیاوری اگر این دوره برات مفید بود، لطفاً لایک، سابسکرایب و کامنت یادت نره تا فصلهای جدیدتر و پروژههای بیشتر بسازیم 🙌
مثلاً هر کتابی رو فرض کنیم چه ویژگیاهایی
داره.
بذار کتگوریو بنویسیم مثلاً ساینس کتابای علمی مثلاً
من یه چند تا از این کتابا رو کپی میکنم
این میشه تو این میشه تری
[ __ ] همینو میدیم به این
مثلاً ساینس باشه مثلاً اینو بکنیم هیستوری
با اینا چون بعداً جلوتر کار داریم برای
همین
چیز مینویسم میرا زیاد
و اینم میار خب
یه لیست از کتاب من درست کردم درسته حالا
میخوام
اگر کاربرم به این ریکوست دد اینو
برگردونم لیسته رو کافیه که اینو بذارم
اینجا به جای مسیج
بریم با هم ببینیم
لیست کتابا رو بهم برگردون حالا شما تو فرانت باید این لیستو بگیرید مثلاً یه
کاری روش انجام بدید ولی ما فعلاً اصلاً
بحث فرانتو اینجا نداریم ما فقط داریم
راجع فصل ایپی اس صحبت میکنیم
خب اینم از این حالا
بریم سراغ اینکه یه نکته دیگه بهتون بگم
شما توی آدرساتون احتمالاً دیدید بچهها
مثلاً میان یه سری ادامه داره این آدرسه
مثلاً میگن که مثلا مای بوک مثلاً
خب مثلاً این چیزی که در ادامه نوشته میشه
اصطلاحاً بهشون میگن پارامتر یعنی شما
میتونید توی آدرستون یه سری پارامتر هم
داشته باشید و از این پارامترا استفاده
میشه برای اینکه مثلاً بخواید یه دیتای
خاصی رو بگیرید
بذار میتونم یه نمونهشو پیدا کنم براتون
مثلاً اینجا رو نگاه کنید مثلاً تو سایت
جانبی.com من اومدم
میگه که توی موبایل اکسسوری ریز برو مثلاً
بلوتوث هندسفیریو بیار یه پارامتریه مثلاً
فرض کنیم خب این دومیه میشه پارامتر حالا
ما میخوایم همینو درست کنیم یعنی مثلاً
بگم که من یه لیستی از محصولات دارم یه
پارامتری بهش پاس میدم و یه لیست یه تعداد
خاصی از اون محصولاتو میدم تو این ریکوسته
حالا ما همین جا میخوایم اینو پیاده سزی
کنیم مثلاً میخوام بگم که دنبال کتاب یه
نویسنده خاصی هستم
چهجوری این کارو بکنم برای این کار شما
باید بیاید توی اون اند پوینتی که مشخص
میکنید یه داینامیک پارام بذارید
اصطلاحاً
اینجا من همینو کپی میکنم
میگم یه دونه در ادامه این خب
اینجا
اسم اینو بذاریم مثلاً
[ __ ] آز
بذار این اسم بالایرم عوض کنم میذارم این اوکی حالا این تفاوتش اینه که یه دونه
پارامتر به عنوان ورودی میگیره
داینامیکرام
مثلاً به اون ورودی میگیره اینجا هم فعلاً اینجوری میبینیم مینویسم فعلاً
اینو میارم دو نقطه همون داینامیک بارم رو
میذارم اینجا
حالا باید تو اند پوینتمم یه تغییری بدم
میام تو اند پوینتم میگم که اگر کسی به
اسلش بوکس اسلش
این ریکوست زد هر چیزی که در ادامه اسلش زد من به حساب یک پارامتر میزنم و این
پارامتو پاس میدم به این فانکشنه و این
اون پارامتر رو برمیگردونه فعلاً
بریم اینو با هم چک کنیم
الان من اینو بزنم بعد چی به من اینجا برگردونه بچهها داینامیک پارام دو نقطه
بوکس مای بوک ایناش
اینو آورد گذاشت اینجا و ببین برگردون
دقیقاً طبق چیزی که اینجا نوشته بودم اما
میتونم کارای دیگه با این بکنم میتونم
مثلاً بگم که اسم کتابو بنویس من اون
کتابه رو فقط بهت برگردونم این کارم
میتونید بکنید. بریم با همدیگه انجام
بدیم.
مثلاً من بگم که
چی بریم ب مثالی
مثلاً میگم که اگر اسم کتابو برگرد نوشت خب من همون کتابو بهش برمیگردونم.
اینو کپی میکنم.
این کپی [ __ ] بچهها یه دلیلی داره. الان
بهتون میگم چرا.
اینجا به جای داینامیک پارام اسمشو
میذارم بوک تایتل
اسم کتابو انگار داره به من میده میگم که
این دیگه رد اسمشو باید عوض کنم چون خب تمام کتابا رو قرارست بخونه میخواد یه
دونه کتابو بخونه این اینم به عنوان ورودی
میگیره فعلاً ریترینو بردارم خب
میگم برو داخل لیست کتابا
یه حلقه بزن یه لوپ بزن من فرضم برای اینکه بچهها شما پایتون رو
آشنا هستید حداقل با در حد مقدماتی و
متوسطشو بلدید برای همین دیگه مثلاً این
فور و اینا رو بهتون نمی چی اگر
گت تایتل
کیس فولد
مساوی
بوک
تایتل
کیس
اگر این بود ریترن بخور اون کتابه رو میگم برو دونه
دونه کتابا رو چک کن خب ببین کتابه تایتلش
یعنی این
برابر این تایتلی هست که من اینجا پاس
دادم به تو یوآرl یا نه؟ اگه برابر بود
اون کتابا رو برگردون
بریم اینو با هم چک کنیم
من اینجا اسم یکی از کتابا رو بنویسم
مثلاً همین تایتل وانو بنویسم یه تایتل
مثلاً فوررو بنویسیم
به جای مایبوک اینو مینویسم فقط بچهها دقت کنید چون اسپیس داره باید اسپیس
نداشته باشیم ما تو یوارلمون میایم چیکار
میکنیم مینویسیم درصد ۲۰ درصد ۲۰ یعنی
اسپیس
اینو بزنم انتظار دارم چی رو بهم برگردونه
اطلاعات اینو بهم برگردونه درسته بریم
ببینیم اتفاق میفته
این بالاییه رو چرا برگردوند اینو برگردوند بچهها من اینو ببندم اینو
برگردوند چرا این نرفت سراغ این بچهها تو
فصل ایپیآی میاد از بالا به پایین میاد
یعنی از بالا دونه یه دونه یوآرآ رو چک
میکنه با هر کدوم تطبیق داشت اونو انجام
میده خب با این تطبیق داشته دیگه دیگه
اصلاً سراغ این نمیره پس شما باید اینو
بیارید بالای این بذارید
که این اول کار بکنه بعد این الان من هر چیزی بنویسم که شبیه این باشه اول این
اجرا میشه اگر این نباشه میره سراغ این
درسته ش اینم از پارامتر پس شما میتونید در حقیقت
پارامتر هم داخل
آدرستون بفرستید بعد از اون پارامتر
استفاده بکنید برای اینکه سمت
در حقیقت دیتاتون یه دیتا خاصی رو مثلاً
پاس بدید به کاربرتون
اینجا بچهها میتون میتونید حتی مشخص بکنید که مثلاً بوک تایتل
دو نقطه باید از جنس استیآر یه استرینگ
باشه حتماً این کارم میتونید بکنید
نکته دیگه نمیدونه بریم بیایم اداش جلسه بعدی صحبت کنیم فعلاً خداحافظ