اصول کوئری API در Django DRF
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- طراحی و پیادهسازی جداول پایگاه داده رابطهای با استفاده از Django ORM.
- تعریف مدلها، روابط (یک به یک، یک به چند، چند به چند) و محدودیتها.
- درک و اعمال کلیدهای اصلی، کلیدهای خارجی و محدودیتهای یکتا.
- انجام کارآمد عملیات CRUD (ایجاد، خواندن، بروزرسانی، حذف) با استفاده از Django ORM
- مدیریت درجهای انبوه، بروزرسانیهای انبوه و روابط تودرتو در Django REST Framework
- پیادهسازی تزریق خودکار داده اولیه برای راهاندازی اولیه پروژه
- بازیابی کارآمد داده با استفاده از all() ،values() ،only() ،()filter و سایر متدهای ORM
- پیادهسازی فیلترینگ پویا با استفاده از پارامترهای کوئری و مسیرهای URL در DRF
- اعمال مرتبسازی، صفحهبندی و حذف موارد duplicate برای بهبود عملکرد API
- نوشتن کوئری های پیچیده با استفاده از Q Objects، عملگرهای منطقی (AND ،OR ،NOT) و فیلترهای بازهای
- بهینهسازی کوئری ها با استفاده از select_related و prefetch_related برای عملکرد بهتر
- انجام SQL JOINها و درک کوئری ترجمه آنها به کوئری توسط Django ORM
- استفاده از کوئری های خام SQL و querysetهای سفارشی در صورت لزوم
- انجام عملیات COUNT ،SUM ،AVG ،MIN ،MAX در Django ORM
- استفاده از GROUP BY و HAVING برای نتایج پیشرفته کوئری
- مقایسه پویای مقادیر فیلدها با استفاده از F Expressions
- پیادهسازی سریالایزرها، viewsetها و endpointهای API در Django REST Framework
- مدیریت روابط تودرتو در سریالایزرها برای ساختارهای داده پیچیده
- در دسترس قرار دادن کوئری های پایگاه داده از طریق endpointهای بهینهشده API
پیش نیازهای دوره
- هیچ تجربه برنامهنویسی مورد نیاز نیست.
توضیحات دوره
این دوره برای کمک به شما در تسلط به Django ORM و Django REST Framework (DRF) جهت ساخت APIهای مقیاسپذیر و مبتنی بر پایگاه داده طراحی شده است. شما از مبانی طراحی پایگاه داده و کوئری ها شروع کرده و به سمت فیلترینگ پیشرفته، JOINها و بهینهسازیها پیش میروید - و همه اینها در حین ادغام با DRF برای در دسترس قرار دادن داده شما از طریق APIها انجام میشود.
مرور دوره
ماژول 1: مقدمه
دریافت یک مرور کلی از دوره، ساختار آن و آنچه تا پایان دوره به دست خواهید آورد.
ماژول 2: راهاندازی محیط توسعه
- نصب و پیکربندی VSCode ،Docker و PostgreSQL
- راهاندازی Django + DRF در یک محیط Docker برای توسعه در دنیای واقعی
ماژول 3: تعریف جداول پایگاه داده با Django ORM
- یادگیری کوئری تعریف مدلها، روابط (یک به چند، چند به چند، یک به یک) و محدودیتها
- کار با انواع داده رایج مانند رشتهها، اعداد و مقادیر بولین
- پیادهسازی کلیدهای اصلی، کلیدهای خارجی و محدودیتهای یکتا
- خودکارسازی ساخت جداول پایگاه داده با اسکریپتهای مقداردهی اولیه PostgreSQL
ماژول 4: درج، بروزرسانی و حذف داده
- کار با ViewSetها و Serializerها برای درج، بروزرسانی و حذف رکوردها از طریق DRF
- یادگیری عملیات انبوه، درجهای تودرتو و مدیریت اشیاء مرتبط
- خودکارسازی تزریق دادههای اولیه پایگاه داده برای راهاندازی سریع پروژه
ماژول 5: کوئری گرفتن کارآمد از پایگاه داده
- بازیابی رکوردها با استفاده از ()all() ،values و ()only
- پیادهسازی فیلترینگ پویا با پارامترهای کوئریو مسیرهای URL
- مدیریت مرتبسازی، صفحهبندی و حذف رکوردهای duplicate
ماژول 6: فیلترینگ پیشرفته و بهینهسازی کوئری
- استفاده از Q Objects برای کوئری های پیچیده (AND ،OR ،NOT)
- اعمال تطبیق الگو، فیلترهای بازهای و عملگرهای منطقی
- بهینهسازی کوئری ها با استفاده از برش لیست و تکنیکهای کارآمد فیلترینگ
ماژول 7: JOINها و کوئری ی روابط
- انجام INNER JOINها با استفاده از Django ORM
- استفاده از prefetch_related و select_related برای بهینهسازی کوئری
- نوشتن کوئری های خام SQL زمانی که ORM کافی نیست.
ماژول 8: تجمیع و گروهبندی
- شمارش، جمع و میانگینگیری کارآمد مقادیر
- استفاده از GROUP BY ،HAVING و مقایسههای فیلد به فیلد برای تحلیلهای پیشرفته
چرا این دوره را بگذرانید؟
- ساخت APIهای مقیاسپذیر و واقعی با استفاده از Django DRF و PostgreSQL
- تسلط به Django ORM برای کار موثر با پایگاههای داده
- بهینهسازی کوئری ها برای عملکرد و مقیاسپذیری
- یادگیری بهترین شیوهها برای ساختاردهی اپلیکیشن های DRF
این دوره برای چه کسانی است؟
- توسعهدهندگانی که با Django DRF و ORM تازه کار هستند.
- مهندسین بکاند که به دنبال بهینهسازی عملکرد کوئری ها هستند.
- هر کسی که میخواهد APIهای REST کارآمد و مقیاسپذیر بسازد.
در پایان این دوره، شما در طراحی و گرفتن کوئری از پایگاههای داده در حین ساخت APIهای آماده تولید Django REST، اعتماد به نفس خواهید داشت!
این دوره برای چه کسانی مناسب است؟
- هر کسی که به دنبال یادگیری Django DRF است.
اصول کوئری API در Django DRF
-
مقدمه دوره 04:13
-
مقدمه ماژول 02:37
-
راهنمای توسعهدهندگان جدید: VSCode برای ویندوز و MacOS 09:44
-
تنظیمات پروژه VSC، راهاندازی Linting و Formatting 05:46
-
راهنمای توسعهدهندگان جدید: Docker Desktop 10:48
-
ایجاد سرویس PostgreSQL و Django با Docker 16:48
-
ایجاد یک پروژه جدید Django DRF درون Docker 13:32
-
مقدمه ماژول 01:54
-
معرفی شمای پایگاه داده و نمودار موجودیت-رابطه (ERD) 06:11
-
تعریف جداول پایگاه داده با مدلهای Django 02:35
-
انواع داده رایج (رشتهها، اعداد، مقادیر بولین) 06:26
-
فیلدهای تاریخ و زمان 03:23
-
فیلدهای اجباری، Null و خالی 05:02
-
مقادیر پیشفرض 02:51
-
مقادیر یکتا 02:18
-
ایجاد کلیدهای اصلی 01:40
-
ایجاد کلیدهای خارجی 06:09
-
رفتار On-Delete 06:21
-
تعریف روابط چند به چند 04:39
-
ایجاد یک رابطه یک به یک 03:29
-
پیادهسازی نهایی مدل 04:05
-
مدیریت Django - ثبت مدلهای Django 16:59
-
اکسپورت کردن از پایگاه داده Django به عنوان SQL 06:00
-
خودکارسازی جداول پایگاه داده - اسکریپت مقداردهی اولیه PostgreSQL 17:47
-
مقدمه ماژول 02:44
-
گزینههای View در Django DRF 08:43
-
مقدمهای بر چرخه درخواست API 06:18
-
معرفی Viewsetها و Serializerها 25:19
-
درج داده با Create و Save 23:10
-
درج انبوه با Bulk Create 09:22
-
بهروزرسانی رکوردهای موجود با ()Save 05:03
-
بروزرسانیهای جزئی با ()Save 02:48
-
مدیریت درجهای ساده یک به چند 04:18
-
مدیریت درج یک به یک با Serializerهای تودرتو 32:40
-
مدیریت درجهای چند به چند 15:36
-
حذف رکوردها 09:56
-
حذف رکوردهای انبوه با Custom Action 12:38
-
ساخت و خودکارسازی تزریق دادههای اولیه پایگاه داده 10:39
-
مقدمه ماژول 02:02
-
بازیابی داده: ()all 17:05
-
بازیابی داده: ()values 09:24
-
بازیابی داده: ()only 04:29
-
فیلتر کردن رکوردها با ()filter 07:00
-
3 روش برای ارسال داده به سرور 09:36
-
فیلترینگ پویا با پارامترهای کوئری 07:25
-
فیلترینگ پویا با پارامترهای مسیر URL 05:07
-
استفاده از Exclude 02:47
-
مرتبسازی نتایج با .order_by() (ASC/DESC) 05:58
-
بازیابی رکورد اول و آخر 04:17
-
پیادهسازی صفحهبندی Django REST Framework 10:46
-
حذف رکوردهای Duplicates با ()distinct. 05:40
-
مقدمه ماژول 01:48
-
استفاده از عملگر منطقی AND با Q Objects 11:00
-
استفاده از عملگر منطقی OR با Q Objects 02:19
-
استفاده از عملگر منطقی NOT با Q Objects 08:49
-
عملگرهای مقایسه 05:36
-
تطبیق الگو 06:12
-
استفاده از in برای فیلترینگ لیست 03:22
-
استفاده از Range برای محدودههای مقداری 04:24
-
محدود کردن با برش لیست 05:32
-
مقدمه ماژول 02:09
-
INNER JOIN در SQL 07:55
-
INNER JOIN در Django ORM با روابط یک به چند 24:03
-
Aliases با Annotate و F Expressions 03:52
-
کوئری معکوس روابط یک به چند 14:42
-
INNER JOIN برای روابط یک به یک مستقیم 08:04
-
INNER JOIN برای روابط یک به یک معکوس 06:20
-
مثال INNER JOIN با Raw SQL و RawQuerySet 08:59
-
روابط چند به چند با Prefetch_Related 15:27
-
مقدمه ماژول 01:34
-
شمارش رکوردها با Count 14:36
-
جمع مقادیر با Sum 10:18
-
محاسبه میانگین با AVG 04:25
-
استفاده از Group By برای تجمیع داده 08:18
-
فیلتر کردن نتایج تجمیع شده با Having 02:02
-
یافتن مقادیر حداقل و حداکثر 03:52
-
مقایسهها و محاسبات فیلد به فیلد با F Expressions 05:18
مشخصات آموزش
اصول کوئری API در Django DRF
- تاریخ به روز رسانی: 1405/04/02
- سطح دوره:مقدماتی
- تعداد درس:77
- مدت زمان :10:13:03
- حجم :4.58GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy