برای ساخت API در جنگو و Django REST Framework (DRF)، لازم به ذکر است با تسلط بر DRF شما میتوانید انواع API ها را برای جنگو توسعه دهید، برای پیاده سازی مراحل زیر را دنبال کنید:

نصب Django و Django REST Framework

ابتدا Django و Django REST Framework را نصب کنید. می‌توانید این کار را با استفاده از pip انجام دهید:

pip install django djangorestframework

۲. ایجاد یک پروژه جدید

برای ایجاد یک پروژه جدید با Django، دستور زیر را در ترمینال اجرا کنید:

django-admin startproject myproject
cd myproject

۳. ایجاد یک اپلیکیشن جدید

از Django برای ایجاد اپلیکیشن استفاده کنید:

python manage.py startapp myapp

۴. افزودن اپلیکیشن به تنظیمات پروژه

پس از ایجاد اپلیکیشن، آن را به تنظیمات پروژه (در settings.py) اضافه کنید:

INSTALLED_APPS = [
    ...
    'rest_framework',
    'myapp',
]

۵. تعریف مدل‌ها

در فایل models.py اپلیکیشن، مدل‌هایی که می‌خواهید ایجاد کنید، تعریف کنید. به عنوان مثال:

from django.db import models

class Item(models.Model):
    name = models.CharField(max_length=100)
    description = models.TextField()

    def __str__(self):
        return self.name

آموزش جنگو رایگان

۶. ایجاد و اعمال ماگریشن ها

شما باید ماگریشن ها را برای ایجاد جداول پایگاه داده انجام دهید:

python manage.py makemigrations
python manage.py migrate

۷. تعریف Serializer

در اپلیکیشن خود، یک فایل به نام serializers.py ایجاد کرده و یک Serializer برای مدل خود بنویسید:

from rest_framework import serializers
from .models import Item

class ItemSerializer(serializers.ModelSerializer):
    class Meta:
        model = Item
        fields = '__all__'

۸. ایجاد ViewSet

در فایل views.py، یک ViewSet برای مدل خود ایجاد کنید:

from rest_framework import viewsets
from .models import Item
from .serializers import ItemSerializer

class ItemViewSet(viewsets.ModelViewSet):
    queryset = Item.objects.all()
    serializer_class = ItemSerializer

۹. تعریف URLها

در فایل urls.py پروژه، URLهایی برای ViewSet خود تعریف کنید. ابتدا باید URLConf برای اپلیکیشن تعریف کنید:

from django.urls import path, include
from rest_framework.routers import DefaultRouter
from .views import ItemViewSet

router = DefaultRouter()
router.register(r'items', ItemViewSet)

urlpatterns = [
    path('', include(router.urls)),
]

و سپس، در فایل urls.py اصلی پروژه، این URLها را وارد کنید:

from django.urls import path, include

urlpatterns = [
    path('api/', include('myapp.urls')),
]

۱۰. تست API

با استفاده از دستور زیر، سرور را راه‌اندازی کنید:

python manage.py runserver

اکنون می‌توانید به API دسترسی پیدا کنید. برای مثال، برای دسترسی به لیست آیتم‌ها، به آدرس زیر بروید:

http://127...1:800/api/items/

نتیجه‌ گیری

با دنبال کردن مراحل بالا، شما ساخت API در جنگو با استفاده از Django REST Framework انجام دادین. این API به شما امکان می‌دهد تا عملیات CRUD (ایجاد، خواندن، به‌روزرسانی و حذف) را بر روی مدل‌های خود انجام دهید. می‌توانید برای افزودن ویژگی‌های بیشتر مانند احراز هویت، مجوزها و غیره، مطالعه بیشتری در مورد Django REST Framework انجام دهید.