آموزش REST API با Flask و Python در سال 2023

REST APIs with Flask and Python in 2023

نکته: آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره: ساخت API های حرفه ای REST با Python، Flask، Docker، Flask-Smorest و Flask-SQLAlchemy اتصال برنامه های کاربردی وب یا تلفن همراه به پایگاه داده ها و سرورها از طریق API های REST ایجاد API های REST ایمن و قابل اعتماد که شامل احراز هویت، استقرار و مهاجرت پایگاه داده می شود درک لایه های مختلف از یک وب سرور و نحوه تعامل برنامه های وب با یکدیگر کنترل یکپارچه احراز هویت کاربر با ویژگی های پیشرفته ای مانند بازخوانی نشانه کنترل خروج از سیستم و جلوگیری از سوء استفاده در API های REST با لیست سیاه JWT توسعه API های REST حرفه ای با دستورالعمل های متخصص بهینه سازی عملکرد REST خود APIهایی با استفاده از صف‌های وظیفه و پس‌زمینه کارگران پیش نیازها: برخی از تجربیات قبلی برنامه‌نویسی در هر زبان برنامه‌نویسی به شما کمک خواهد کرد. این دوره شامل یک دوره تکمیلی کامل پایتون است. تمام نرم افزارهای مورد استفاده در دوره ارائه شده است و مبتدیان کاملا رایگان ممکن است بخواهند ابتدا یک دوره مبتدی پایتون را بگذرانند و سپس به این دوره منتقل شوند.

آیا از آموزش های خسته کننده، قدیمی، ناقص یا نادرست خسته شده اید؟ من دیگر به کپی پیست کردن کدهایی که متوجه نمی‌شوید نمی‌گویم.

به پرفروش ترین دوره REST API در Udemy خوش آمدید! من خوزه هستم. من یک مهندس نرم افزار هستم، اینجا برای کمک به شما در درک و توسعه مهارت های خود در وب و توسعه API REST با Python، Flask، و Docker هستم.

APIهای REST آماده تولید با Flask

این دوره شما را در ایجاد APIهای REST ساده، متوسط ​​و پیشرفته از جمله احراز هویت، استقرار، پایگاه داده و موارد دیگر راهنمایی می کند.

ما با یک بازنگری پایتون شروع می‌کنیم که شما را از ابتدایی‌ترین ویژگی‌های پایتون به برخی از پیشرفته‌ترین ویژگی‌های پایتون می‌برد—این تمام پایتونی است که برای تکمیل دوره به آن نیاز دارید.

با استفاده از Flask و برنامه‌های افزودنی محبوب Flask-Smorest، Flask-JWT-Extended، و Flask-SQLAlchemy، ما مستقیماً به توسعه APIهای REST کامل، جامد و آماده برای تولید می‌پردازیم.

ما همچنین به فناوری‌های ضروری مانند Git و انتقال پایگاه داده با Alembic نگاه خواهیم کرد.


شما می توانید...

  • با استفاده از Python، Flask و پسوندهای محبوب Flask، APIهای REST مبتنی بر منابع و آماده تولید ایجاد کنید؛

  • ثبت نام کاربری و احراز هویت ایمن را با Flask انجام دهید.

  • استفاده از SQLAlchemy و Flask-SQLAlchemy برای ذخیره آسان و کارآمد منابع در پایگاه داده. و

  • پیچیدگی‌های پیچیده استقرار Flask REST APIها را درک کنید.

  • از Docker برای ساده کردن اجرای و استقرار REST API های خود استفاده کنید.


اما به هر حال REST API چیست؟

REST API برنامه‌ای است که داده‌های مشتریان را می‌پذیرد و داده‌ها را برمی‌گرداند. به عنوان مثال، یک REST API می‌تواند داده‌های متنی مشتری، مانند نام کاربری و رمز عبور را بپذیرد و نشان دهد که آیا کاربر معتبری در پایگاه داده است یا خیر.

هنگام توسعه API های REST، مشتریان ما معمولاً برنامه های وب یا برنامه های تلفن همراه هستند. این برخلاف زمانی است که ما وب‌سایت‌هایی می‌سازیم، که مشتریان معمولاً خود کاربران هستند.

ما با هم یک REST API ایجاد خواهیم کرد که نه تنها به مشتریان اجازه احراز هویت را می دهد، بلکه می توانند هر داده ای را که می خواهید از پایگاه داده ذخیره و بازیابی کنند. یادگیری این به شما کمک می کند تا هر REST API را که برای پروژه های خود نیاز دارید توسعه دهید!


من به خودم افتخار می کنم که از تک تک دانش آموزان پشتیبانی و بازخورد عالی ارائه می کنم. من همیشه برای راهنمایی شما و پاسخ به سوالات شما در دسترس هستم.

از داخل شما را خواهم دید. اولین قدم خود را به سمت تسلط REST API بردارید!


سرفصل ها و درس ها

خوش آمدی! Welcome!

  • نحوه گذراندن این دوره How to take this course

  • پایتون در ویندوز Python on Windows

  • پایتون در مک Python on Mac

خوش آمدی! Welcome!

  • نحوه گذراندن این دوره How to take this course

  • پایتون در ویندوز Python on Windows

  • پایتون در مک Python on Mac

یک تجدید کننده کامل پایتون A Full Python Refresher

  • معرفی این بخش Introduction to this section

  • از اینجا به کد این بخش دسترسی پیدا کنید Access the code for this section here

  • متغیرها در پایتون Variables in Python

  • متغیرها (Python 3.10) Variables (Python 3.10)

  • راه حل تمرین کدنویسی: متغیرها Solution to coding exercise: Variables

  • قالب بندی رشته در پایتون String formatting in Python

  • دریافت ورودی کاربر Getting user input

  • نوشتن اولین برنامه پایتون Writing our first Python app

  • لیست ها، تاپل ها و مجموعه ها Lists, tuples, and sets

  • عملیات مجموعه پیشرفته Advanced set operations

  • لیست ها، تاپل ها و مجموعه ها (Python 3.10) Lists, tuples, and set (Python 3.10)

  • راه حل تمرین کدنویسی: لیست ها، تاپل ها، مجموعه ها Solution to coding exercise: Lists, tuples, sets

  • بولی ها در پایتون Booleans in Python

  • اگر اظهارات If statements

  • کلمه کلیدی "in" در پایتون The 'in' keyword in Python

  • اگر عباراتی با کلمه کلیدی "in" وجود دارد If statements with the 'in' keyword

  • حلقه ها در پایتون Loops in Python

  • کنترل جریان - حلقه‌ها و اگرها (Python 3.10) Flow control—loops and ifs (Python 3.10)

  • راه حل تمرین کدگذاری: کنترل جریان Solution to coding exercise: Flow control

  • فهرست درک در پایتون List comprehensions in Python

  • لغت نامه ها Dictionaries

  • متغیرهای تخریبی Destructuring variables

  • توابع در پایتون Functions in Python

  • آرگومان ها و پارامترهای تابع Function arguments and parameters

  • مقادیر پارامترهای پیش فرض Default parameter values

  • توابع مقادیر را برمی گرداند Functions returning values

  • توابع (Python 3.10) Functions (Python 3.10)

  • راه حل تمرین کدنویسی: توابع Solution to coding exercise: Functions

  • توابع لامبدا در پایتون Lambda functions in Python

  • درک فرهنگ لغت Dictionary comprehensions

  • دیکشنری ها و دانش آموزان (Python 3.10) Dictionaries and students (Python 3.10)

  • راه حل تمرین کدنویسی: دیکشنری ها Solution to coding exercise: Dictionaries

  • باز کردن آرگومان ها Unpacking arguments

  • باز کردن آرگومان های کلمه کلیدی Unpacking keyword arguments

  • برنامه نویسی شی گرا در پایتون Object-Oriented Programming in Python

  • روش های جادویی: __str__ و __repr__ Magic methods: __str__ and __repr__

  • کلاس ها و اشیا (Python 3.10) Classes and objects (Python 3.10)

  • راه حل تمرین کدنویسی: کلاس ها و اشیا Solution to coding exercise: Classes and objects

  • @classmethod و @staticmethod @classmethod and @staticmethod

  • @classmethod و @staticmethod (Python 3.10) @classmethod and @staticmethod (Python 3.10)

  • راه حل تمرین کدنویسی: @classmethod و @staticmethod Solution to coding exercise: @classmethod and @staticmethod

  • وراثت طبقاتی Class inheritance

  • ترکیب کلاس Class composition

  • hinting را در پایتون 3.5+ تایپ کنید Type hinting in Python 3.5+

  • واردات در پایتون Imports in Python

  • واردات نسبی در پایتون Relative imports in Python

  • خطاها در پایتون Errors in Python

  • کلاس های خطای سفارشی Custom error classes

  • توابع درجه یک First-class functions

  • دکوراتورهای ساده در پایتون Simple decorators in Python

  • نحو "at" برای دکوراتورها The 'at' syntax for decorators

  • تزئین توابع با پارامترها Decorating functions with parameters

  • دکوراتورها با پارامترها Decorators with parameters

  • تغییرپذیری در پایتون Mutability in Python

  • پارامترهای پیش فرض قابل تغییر (و چرا ایده بدی هستند) Mutable default parameters (and why they're a bad idea)

یک تجدید کننده کامل پایتون A Full Python Refresher

  • معرفی این بخش Introduction to this section

  • از اینجا به کد این بخش دسترسی پیدا کنید Access the code for this section here

  • متغیرها در پایتون Variables in Python

  • متغیرها (Python 3.10) Variables (Python 3.10)

  • راه حل تمرین کدنویسی: متغیرها Solution to coding exercise: Variables

  • قالب بندی رشته در پایتون String formatting in Python

  • دریافت ورودی کاربر Getting user input

  • نوشتن اولین برنامه پایتون Writing our first Python app

  • لیست ها، تاپل ها و مجموعه ها Lists, tuples, and sets

  • عملیات مجموعه پیشرفته Advanced set operations

  • لیست ها، تاپل ها و مجموعه ها (Python 3.10) Lists, tuples, and set (Python 3.10)

  • راه حل تمرین کدنویسی: لیست ها، تاپل ها، مجموعه ها Solution to coding exercise: Lists, tuples, sets

  • بولی ها در پایتون Booleans in Python

  • اگر اظهارات If statements

  • کلمه کلیدی "in" در پایتون The 'in' keyword in Python

  • اگر عباراتی با کلمه کلیدی "in" وجود دارد If statements with the 'in' keyword

  • حلقه ها در پایتون Loops in Python

  • کنترل جریان - حلقه‌ها و اگرها (Python 3.10) Flow control—loops and ifs (Python 3.10)

  • راه حل تمرین کدگذاری: کنترل جریان Solution to coding exercise: Flow control

  • فهرست درک در پایتون List comprehensions in Python

  • لغت نامه ها Dictionaries

  • متغیرهای تخریبی Destructuring variables

  • توابع در پایتون Functions in Python

  • آرگومان ها و پارامترهای تابع Function arguments and parameters

  • مقادیر پارامترهای پیش فرض Default parameter values

  • توابع مقادیر را برمی گرداند Functions returning values

  • توابع (Python 3.10) Functions (Python 3.10)

  • راه حل تمرین کدنویسی: توابع Solution to coding exercise: Functions

  • توابع لامبدا در پایتون Lambda functions in Python

  • درک فرهنگ لغت Dictionary comprehensions

  • دیکشنری ها و دانش آموزان (Python 3.10) Dictionaries and students (Python 3.10)

  • راه حل تمرین کدنویسی: دیکشنری ها Solution to coding exercise: Dictionaries

  • باز کردن آرگومان ها Unpacking arguments

  • باز کردن آرگومان های کلمه کلیدی Unpacking keyword arguments

  • برنامه نویسی شی گرا در پایتون Object-Oriented Programming in Python

  • روش های جادویی: __str__ و __repr__ Magic methods: __str__ and __repr__

  • کلاس ها و اشیا (Python 3.10) Classes and objects (Python 3.10)

  • راه حل تمرین کدنویسی: کلاس ها و اشیا Solution to coding exercise: Classes and objects

  • @classmethod و @staticmethod @classmethod and @staticmethod

  • @classmethod و @staticmethod (Python 3.10) @classmethod and @staticmethod (Python 3.10)

  • راه حل تمرین کدنویسی: @classmethod و @staticmethod Solution to coding exercise: @classmethod and @staticmethod

  • وراثت طبقاتی Class inheritance

  • ترکیب کلاس Class composition

  • hinting را در پایتون 3.5+ تایپ کنید Type hinting in Python 3.5+

  • واردات در پایتون Imports in Python

  • واردات نسبی در پایتون Relative imports in Python

  • خطاها در پایتون Errors in Python

  • کلاس های خطای سفارشی Custom error classes

  • توابع درجه یک First-class functions

  • دکوراتورهای ساده در پایتون Simple decorators in Python

  • نحو "at" برای دکوراتورها The 'at' syntax for decorators

  • تزئین توابع با پارامترها Decorating functions with parameters

  • دکوراتورها با پارامترها Decorators with parameters

  • تغییرپذیری در پایتون Mutability in Python

  • پارامترهای پیش فرض قابل تغییر (و چرا ایده بدی هستند) Mutable default parameters (and why they're a bad idea)

اولین API REST شما Your first REST API

  • از اینجا به کتاب الکترونیکی دوره دسترسی پیدا کنید Access the course e-book here

  • نمای کلی پروژه ای که خواهیم ساخت Overview of the project we'll build

  • راه اندازی اولیه برای یک برنامه Flask Initial set-up for a Flask app

  • اولین نقطه پایانی REST API شما Your first REST API endpoint

  • JSON چیست؟ What is JSON?

  • نحوه تعامل و تست REST API خود How to interact with and test your REST API

  • چگونه در REST API خود فروشگاه ایجاد کنیم How to create stores in our REST API

  • نحوه ایجاد اقلام در هر فروشگاه How to create items in each store

  • چگونه یک فروشگاه خاص و اقلام آن را دریافت کنیم How to get a specific store and its items

اولین API REST شما Your first REST API

  • از اینجا به کتاب الکترونیکی دوره دسترسی پیدا کنید Access the course e-book here

  • نمای کلی پروژه ای که خواهیم ساخت Overview of the project we'll build

  • راه اندازی اولیه برای یک برنامه Flask Initial set-up for a Flask app

  • اولین نقطه پایانی REST API شما Your first REST API endpoint

  • JSON چیست؟ What is JSON?

  • نحوه تعامل و تست REST API خود How to interact with and test your REST API

  • چگونه در REST API خود فروشگاه ایجاد کنیم How to create stores in our REST API

  • نحوه ایجاد اقلام در هر فروشگاه How to create items in each store

  • چگونه یک فروشگاه خاص و اقلام آن را دریافت کنیم How to get a specific store and its items

مقدمه ای بر داکر Introduction to Docker

  • کانتینرها و تصاویر داکر چیست؟ What are Docker containers and images?

  • نحوه اجرای برنامه Flask در ظرف Docker How to run a Flask app in a Docker container

  • یادداشت های آموزشی عمیق Docker In-depth Docker tutorial notes

مقدمه ای بر داکر Introduction to Docker

  • کانتینرها و تصاویر داکر چیست؟ What are Docker containers and images?

  • نحوه اجرای برنامه Flask در ظرف Docker How to run a Flask app in a Docker container

  • یادداشت های آموزشی عمیق Docker In-depth Docker tutorial notes

Flask-Smorest برای توسعه کارآمدتر Flask-Smorest for more efficient development

  • بهبود مدل داده برای API ما Data model improvements for our API

  • بهبودهای کلی برای اولین REST API ما General improvements to our first REST API

  • نقاط پایانی جدید برای اولین API REST ما New endpoints for our first REST API

  • نحوه اجرای API در Docker با بارگیری مجدد خودکار و حالت اشکال زدایی How to run the API in Docker with automatic reloading and debug mode

  • نحوه استفاده از Blueprints و MethodViews در Flask How to use Blueprints and MethodViews in Flask

  • چگونه برای API خود طرحواره های مارشملو بنویسیم How to write marshmallow schemas for our API

  • نحوه انجام اعتبارسنجی داده ها با مارشمالو How to perform data validation with marshmallow

  • تزئین پاسخ ها با Flask-Smorest Decorating responses with Flask-Smorest

Flask-Smorest برای توسعه کارآمدتر Flask-Smorest for more efficient development

  • بهبود مدل داده برای API ما Data model improvements for our API

  • بهبودهای کلی برای اولین REST API ما General improvements to our first REST API

  • نقاط پایانی جدید برای اولین API REST ما New endpoints for our first REST API

  • نحوه اجرای API در Docker با بارگیری مجدد خودکار و حالت اشکال زدایی How to run the API in Docker with automatic reloading and debug mode

  • نحوه استفاده از Blueprints و MethodViews در Flask How to use Blueprints and MethodViews in Flask

  • چگونه برای API خود طرحواره های مارشملو بنویسیم How to write marshmallow schemas for our API

  • نحوه انجام اعتبارسنجی داده ها با مارشمالو How to perform data validation with marshmallow

  • تزئین پاسخ ها با Flask-Smorest Decorating responses with Flask-Smorest

ذخیره داده ها در پایگاه داده SQL با SQLAlchemy Store data in a SQL database with SQLAlchemy

  • بررسی اجمالی و چرایی استفاده از SQLAlchemy Overview and why use SQLAlchemy

  • چگونه یک مدل ساده SQLAlchemy را کدنویسی کنیم How to code a simple SQLAlchemy model

  • نحوه نوشتن روابط یک به چند با استفاده از SQLAlchemy How to write one-to-many relationships using SQLAlchemy

  • چگونه Flask-SQLAlchemy را با برنامه Flask خود پیکربندی کنید How to configure Flask-SQLAlchemy with your Flask app

  • نحوه درج داده ها در جدول با استفاده از SQLAlchemy How to insert data into a table using SQLAlchemy

  • چگونه مدل ها را در پایگاه داده با شناسه پیدا کنیم یا 404 را برگردانیم How to find models in the database by ID or return a 404

  • نحوه به روز رسانی مدل ها با SQLAlchemy How to update models with SQLAlchemy

  • نحوه بازیابی لیست همه مدل ها How to retrieve list of all models

  • چگونه مدل ها را با SQLAlchemy حذف کنیم How to delete models with SQLAlchemy

  • حذف مدل های مرتبط با آبشار Deleting related models with cascades

  • نتیجه گیری این بخش Conclusion of this section

ذخیره داده ها در پایگاه داده SQL با SQLAlchemy Store data in a SQL database with SQLAlchemy

  • بررسی اجمالی و چرایی استفاده از SQLAlchemy Overview and why use SQLAlchemy

  • چگونه یک مدل ساده SQLAlchemy را کدنویسی کنیم How to code a simple SQLAlchemy model

  • نحوه نوشتن روابط یک به چند با استفاده از SQLAlchemy How to write one-to-many relationships using SQLAlchemy

  • چگونه Flask-SQLAlchemy را با برنامه Flask خود پیکربندی کنید How to configure Flask-SQLAlchemy with your Flask app

  • نحوه درج داده ها در جدول با استفاده از SQLAlchemy How to insert data into a table using SQLAlchemy

  • چگونه مدل ها را در پایگاه داده با شناسه پیدا کنیم یا 404 را برگردانیم How to find models in the database by ID or return a 404

  • نحوه به روز رسانی مدل ها با SQLAlchemy How to update models with SQLAlchemy

  • نحوه بازیابی لیست همه مدل ها How to retrieve list of all models

  • چگونه مدل ها را با SQLAlchemy حذف کنیم How to delete models with SQLAlchemy

  • حذف مدل های مرتبط با آبشار Deleting related models with cascades

  • نتیجه گیری این بخش Conclusion of this section

روابط بسیار به چند با SQLAlchemy Many-to-many relationships with SQLAlchemy

  • تغییرات در این بخش Changes in this section

  • رابطه یک به چند بین فروشگاه ها و برچسب ها One-to-many relationship between stores and tags

  • رابطه چند به چند بین آیتم ها و برچسب ها Many-to-many relationship between items and tags

روابط بسیار به چند با SQLAlchemy Many-to-many relationships with SQLAlchemy

  • تغییرات در این بخش Changes in this section

  • رابطه یک به چند بین فروشگاه ها و برچسب ها One-to-many relationship between stores and tags

  • رابطه چند به چند بین آیتم ها و برچسب ها Many-to-many relationship between items and tags

احراز هویت کاربر با Flask-JWT-Extended User authentication with Flask-JWT-Extended

  • تغییرات در این بخش Changes in this section

  • JWT چیست؟ What is a JWT?

  • چه کسی از JWT استفاده می کند؟ Who uses the JWT?

  • نحوه تنظیم Flask-JWT-Extended با برنامه ما How to set up Flask-JWT-Extended with our app

  • کدگذاری مدل کاربر و طرحواره Coding the User model and schema

  • چگونه یک نقطه پایانی ثبت نام را به REST API اضافه کنیم How to add a register endpoint to the REST API

  • نحوه افزودن نقطه پایانی ورود به API REST How to add a login endpoint to the REST API

  • با نیاز به JWT از نقاط پایانی محافظت کنید Protect endpoints by requiring a JWT

  • ادعاهای JWT و مجوز JWT claims and authorization

  • نحوه اضافه کردن خروج از سیستم به REST API How to add logout to the REST API

  • درخواست زنجیره ای با بی خوابی Request chaining with Insomnia

  • تازه کردن توکن با Flask-JWT-Extended Token refreshing with Flask-JWT-Extended

احراز هویت کاربر با Flask-JWT-Extended User authentication with Flask-JWT-Extended

  • تغییرات در این بخش Changes in this section

  • JWT چیست؟ What is a JWT?

  • چه کسی از JWT استفاده می کند؟ Who uses the JWT?

  • نحوه تنظیم Flask-JWT-Extended با برنامه ما How to set up Flask-JWT-Extended with our app

  • کدگذاری مدل کاربر و طرحواره Coding the User model and schema

  • چگونه یک نقطه پایانی ثبت نام را به REST API اضافه کنیم How to add a register endpoint to the REST API

  • نحوه افزودن نقطه پایانی ورود به API REST How to add a login endpoint to the REST API

  • با نیاز به JWT از نقاط پایانی محافظت کنید Protect endpoints by requiring a JWT

  • ادعاهای JWT و مجوز JWT claims and authorization

  • نحوه اضافه کردن خروج از سیستم به REST API How to add logout to the REST API

  • درخواست زنجیره ای با بی خوابی Request chaining with Insomnia

  • تازه کردن توکن با Flask-JWT-Extended Token refreshing with Flask-JWT-Extended

مهاجرت پایگاه داده با Alembic و Flask-Migrate Database migrations with Alembic and Flask-Migrate

  • چرا اصلاً از انتقال پایگاه داده استفاده کنیم؟ Why use database migrations at all?

  • چگونه Flask-Migrate را به برنامه Flask خود اضافه کنیم How to add Flask-Migrate to our Flask app

  • پایگاه داده خود را با Flask-Migrate راه اندازی کنید Initialize your database with Flask-Migrate

  • مدل های SQLAlchemy را تغییر دهید و یک مهاجرت ایجاد کنید Change SQLAlchemy models and generate a migration

  • مهاجرت های پایگاه داده را به صورت دستی بررسی و اصلاح کنید Manually review and modify database migrations

مهاجرت پایگاه داده با Alembic و Flask-Migrate Database migrations with Alembic and Flask-Migrate

  • چرا اصلاً از انتقال پایگاه داده استفاده کنیم؟ Why use database migrations at all?

  • چگونه Flask-Migrate را به برنامه Flask خود اضافه کنیم How to add Flask-Migrate to our Flask app

  • پایگاه داده خود را با Flask-Migrate راه اندازی کنید Initialize your database with Flask-Migrate

  • مدل های SQLAlchemy را تغییر دهید و یک مهاجرت ایجاد کنید Change SQLAlchemy models and generate a migration

  • مهاجرت های پایگاه داده را به صورت دستی بررسی و اصلاح کنید Manually review and modify database migrations

دوره Crash Git Git Crash Course

  • مخازن و تعهدات Git چیست؟ What are Git repositories and commits?

  • یک مخزن Git برای پروژه خود راه اندازی کنید Initialize a Git repository for our project

  • نوشتن Markdown برای اسناد و تعهدات Writing Markdown for documents and commits

  • مخازن راه دور و نحوه استفاده از آنها Remote repositories and how to use them

  • شاخه های گیت و ادغام Git branches and merging

  • ادغام تضادها و نحوه حل آنها Merge conflicts and how to resolve them

  • مروری بر فصول پایانی کتاب الکترونیکی Overview of the final e-book chapters

دوره Crash Git Git Crash Course

  • مخازن و تعهدات Git چیست؟ What are Git repositories and commits?

  • یک مخزن Git برای پروژه خود راه اندازی کنید Initialize a Git repository for our project

  • نوشتن Markdown برای اسناد و تعهدات Writing Markdown for documents and commits

  • مخازن راه دور و نحوه استفاده از آنها Remote repositories and how to use them

  • شاخه های گیت و ادغام Git branches and merging

  • ادغام تضادها و نحوه حل آنها Merge conflicts and how to resolve them

  • مروری بر فصول پایانی کتاب الکترونیکی Overview of the final e-book chapters

استقرار با Render.com Deployments with Render.com

  • مروری بر این بخش Overview of this section

  • ایجاد یک وب سرویس Render.com Creating a Render.com web service

  • نحوه اجرای Flask با گانیکورن در Docker How to run Flask with gunicorn in Docker

  • یک پایگاه داده مستقر PostgreSQL دریافت کنید Get a deployed PostgreSQL database

  • از PostgreSQL به صورت محلی و در تولید استفاده کنید Use PostgreSQL locally and in production

  • برنامه تولید نهایی را تست کنید Test the finished production app

استقرار با Render.com Deployments with Render.com

  • مروری بر این بخش Overview of this section

  • ایجاد یک وب سرویس Render.com Creating a Render.com web service

  • نحوه اجرای Flask با گانیکورن در Docker How to run Flask with gunicorn in Docker

  • یک پایگاه داده مستقر PostgreSQL دریافت کنید Get a deployed PostgreSQL database

  • از PostgreSQL به صورت محلی و در تولید استفاده کنید Use PostgreSQL locally and in production

  • برنامه تولید نهایی را تست کنید Test the finished production app

Task Queues با rq و ارسال ایمیل Task Queues with rq and sending emails

  • نحوه ارسال ایمیل با پایتون و میلگان How to send emails with Python and Mailgun

  • نحوه ارسال ایمیل هنگام ثبت نام کاربران How to send emails when users register

  • صف وظایف و راه اندازی پایگاه داده Redis چیست What is a task queue and setting up a Redis database

  • نحوه پر کردن و مصرف صف وظایف با rq How to Populate and consume the task queue with rq

  • نحوه پردازش وظایف پس زمینه با کارگر rq How to process background tasks with the rq worker

  • نحوه ارسال ایمیل های HTML با استفاده از Mailgun و Python How to send HTML emails using Mailgun and Python

  • نحوه استقرار یک پس زمینه کارگر در render.com How to deploy a background worker to render.com

Task Queues با rq و ارسال ایمیل Task Queues with rq and sending emails

  • نحوه ارسال ایمیل با پایتون و میلگان How to send emails with Python and Mailgun

  • نحوه ارسال ایمیل هنگام ثبت نام کاربران How to send emails when users register

  • صف وظایف و راه اندازی پایگاه داده Redis چیست What is a task queue and setting up a Redis database

  • نحوه پر کردن و مصرف صف وظایف با rq How to Populate and consume the task queue with rq

  • نحوه پردازش وظایف پس زمینه با کارگر rq How to process background tasks with the rq worker

  • نحوه ارسال ایمیل های HTML با استفاده از Mailgun و Python How to send HTML emails using Mailgun and Python

  • نحوه استقرار یک پس زمینه کارگر در render.com How to deploy a background worker to render.com

بخش پاداش Bonus Section

  • سخنرانی پاداش: دوره های دیگر و مراحل بعدی Bonus lecture: other courses and next steps

بخش پاداش Bonus Section

  • سخنرانی پاداش: دوره های دیگر و مراحل بعدی Bonus lecture: other courses and next steps

نمایش نظرات

آموزش REST API با Flask و Python در سال 2023
جزییات دوره
12 hours
123
Udemy (یودمی) Udemy (یودمی)
(آخرین آپدیت)
110,111
4.6 از 5
دارد
دارد
دارد
جهت دریافت آخرین اخبار و آپدیت ها در کانال تلگرام عضو شوید.

Google Chrome Browser

Internet Download Manager

Pot Player

Winrar

Jose Salvatierra Jose Salvatierra

بنیانگذار Teclado و مهندس نرم افزار

Teclado by Jose Salvatierra Teclado by Jose Salvatierra

توسعه نرم افزار برای همه