Rumah >pembangunan bahagian belakang >Tutorial Python >Membina API RESTful menggunakan Django

Membina API RESTful menggunakan Django

PHPz
PHPzasal
2023-06-17 21:29:381226semak imbas

Django ialah rangka kerja web yang memudahkan untuk membina API RESTful. RESTful API ialah seni bina berasaskan web yang boleh diakses melalui protokol HTTP. Dalam artikel ini, kami akan membincangkan cara menggunakan Django untuk membina API RESTful, termasuk cara menggunakan rangka kerja Django REST untuk memudahkan proses pembangunan.

  1. Pasang Django

Mula-mula, kita perlu memasang Django secara setempat. Anda boleh menggunakan pip untuk memasang Django Perintah khusus adalah seperti berikut:

pip install Django
  1. Buat projek Django

Selepas memasang Django, kita boleh mencipta projek Django dengan menjalankan arahan berikut:

django-admin startproject projectname

Di mana, projectname ialah nama projek yang anda ingin buat.

  1. Mencipta aplikasi Django

Projek Django terdiri daripada aplikasi. Kita perlu mencipta aplikasi dalam projek untuk membina API RESTful. Anda boleh mencipta apl dengan menjalankan arahan berikut:

python manage.py startapp appname

di mana appname ialah nama apl yang ingin anda cipta.

  1. Mengkonfigurasi pangkalan data

Secara lalai, Django menggunakan SQLite sebagai pangkalan data lalainya. Jika anda ingin menukar pangkalan data, anda boleh mengkonfigurasinya dalam fail settings.py projek.

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'mydatabaseuser',
        'PASSWORD': 'mypassword',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
  1. Mencipta model

Dalam Django, model ialah kelas yang digunakan untuk mengekalkan data. Kita perlu mencipta model yang dikaitkan dengan API RESTful.

from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=200)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)

Dalam contoh ini, kami telah mencipta model bernama Article yang mempunyai medan title, content dan created_at.

  1. Buat serializer

Serializer digunakan untuk mensirikan model ke dalam format JSON untuk dihantar kepada pelanggan. Proses ini boleh dipermudahkan menggunakan penyeri bersiri yang disediakan oleh rangka kerja Django REST.

from rest_framework import serializers
from .models import Article

class ArticleSerializer(serializers.ModelSerializer):
    class Meta:
        model = Article
        fields = ('id', 'title', 'content', 'created_at')

Dalam contoh ini kami mencipta penyeri bersiri bernama ArticleSerializer yang menyerikan model Article untuk mengandungi id, title, content dan created_atformat JSON medan.

  1. Buat Paparan

Paparan digunakan untuk mengendalikan permintaan HTTP dan membalas respons kepada pelanggan. Proses ini boleh dipermudahkan menggunakan kelas paparan yang disediakan oleh rangka kerja Django REST.

from rest_framework import generics
from .models import Article
from .serializers import ArticleSerializer

class ArticleList(generics.ListCreateAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer

class ArticleDetail(generics.RetrieveUpdateDestroyAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer

Dalam contoh ini, kami mencipta kelas paparan ArticleList dan ArticleDetail. Kelas ArticleList mengendalikan permintaan GET dan POST dan kelas ArticleDetail mengendalikan permintaan GET, PUT dan DELETE. Kesemuanya menggunakan Article model dan ArticleSerializer penyeri bersiri.

  1. Tambah URL

Kami perlu memetakan paparan ke URL supaya pelanggan boleh mengakses API RESTful. Ini boleh dikonfigurasikan dalam fail urls.py aplikasi.

from django.conf.urls import url
from .views import ArticleList, ArticleDetail

urlpatterns = [
    url(r'^articles/$', ArticleList.as_view(), name='article-list'),
    url(r'^articles/(?P<pk>[0-9]+)/$', ArticleDetail.as_view(), name='article-detail'),
]

Dalam contoh ini, kami memetakan paparan ArticleList dan ArticleDetail ke URL /articles/ dan /articles/3743615655418b561e68ee695446cfdb/. 3743615655418b561e68ee695446cfdb ialah kunci utama model Article.

  1. Jalankan pelayan

Kini kita boleh menjalankan pelayan Django dan cuba mendapatkan data daripada RESTful API.

python manage.py runserver

Lawati http://127.0.0.1:8000/articles/ untuk mendapatkan senarai semua kejadian model Article. Lawati http://127.0.0.1:8000/articles/53384f78b45ee9f1e3082cf378b9c5b4/ untuk mendapatkan maklumat terperinci tentang satu Article contoh model.

Ringkasan:

Artikel ini memperkenalkan cara menggunakan Django untuk membina API RESTful. Dengan mengikut langkah di atas, anda boleh membina API RESTful dengan mudah dan menggunakan rangka kerja Django REST untuk memudahkan proses pembangunan. API RESTful ialah bahagian penting dalam membuat aplikasi web, jadi Django menyediakan sokongan dan alatan yang baik untuk membantu pembangun membina API RESTful yang berkuasa.

Atas ialah kandungan terperinci Membina API RESTful menggunakan Django. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn