ホームページ > バックエンド開発 > Python チュートリアル > Django を使用した RESTful API の構築

Django を使用した RESTful API の構築

PHPz
リリース: 2023-06-17 21:29:38
オリジナル
1252 人が閲覧しました

Django は、RESTful API を簡単に構築できる Web フレームワークです。 RESTful API は、HTTP プロトコルを通じてアクセスできる Web ベースのアーキテクチャです。この記事では、Django REST フレームワークを使用して開発プロセスを簡素化する方法を含め、Django を使用して RESTful API を構築する方法について説明します。

  1. Django のインストール

まず、Django をローカルにインストールする必要があります。 pip を使用して Django をインストールできます。具体的なコマンドは次のとおりです:

pip install Django
ログイン後にコピー
  1. Create Django project

Django をインストールした後、次のコマンドを実行して Django プロジェクトを作成できます。次のコマンド:

django-admin startproject projectname
ログイン後にコピー

このうち、projectname は作成したいプロジェクトの名前です。

  1. Django アプリケーションの作成

Django プロジェクトはアプリケーションで構成されます。 RESTful API を構築するには、プロジェクト内にアプリケーションを作成する必要があります。次のコマンドを実行して、アプリケーションを作成できます。

python manage.py startapp appname
ログイン後にコピー

ここで、appname は、作成するアプリケーションの名前です。

  1. データベースの構成

デフォルトでは、Django はデフォルトのデータベースとして SQLite を使用します。データベースを変更する場合は、プロジェクトの settings.py ファイルで構成できます。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.postgresql',
        'NAME': 'mydatabase',
        'USER': 'mydatabaseuser',
        'PASSWORD': 'mypassword',
        'HOST': '127.0.0.1',
        'PORT': '5432',
    }
}
ログイン後にコピー
  1. モデルを作成する

Django では、モデルはデータを維持するために使用されるクラスです。 RESTful API に関連付けられたモデルを作成する必要があります。

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)
ログイン後にコピー

この例では、titlecontent、および created_at Field を持つ Article というモデルを作成します。

  1. シリアライザーの作成

シリアライザーは、クライアントに配信するためにモデルを JSON 形式にシリアル化するために使用されます。このプロセスは、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')
ログイン後にコピー

この例では、#、## の id## JSON 形式を含むように Article モデルをシリアル化する ArticleSerializer という名前のシリアライザーを作成します。 #titlecontent、および created_at フィールド。

Create View
  1. View は、HTTP リクエストを処理し、クライアントに応答を返すために使用されます。このプロセスは、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
ログイン後にコピー

この例では、ビュー クラス

ArticleList

ArticleDetail を作成します。 ArticleList クラスは GET および POST リクエストを処理し、ArticleDetail クラスは GETPUT# を処理します。 ## リクエストと DELETE リクエスト。どちらも Article モデルと ArticleSerializer シリアライザーを使用します。 URL の追加

  1. クライアントが RESTful API にアクセスできるように、ビューを URL にマップする必要があります。これは、アプリケーションの
  2. urls.py
ファイルで構成できます。

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'),
]
ログイン後にコピー
この例では、ArticleList

ビューと

ArticleDetail ビューを URL /articles//articles/< にマップしました。 ;pk>/ は、Article モデルの主キーです。 サーバーの実行

  1. これで、Django サーバーを実行し、RESTful API からデータを取得できるようになります。
  2. python manage.py runserver
    ログイン後にコピー

    http://127.0.0.1:8000/articles/

    にアクセスして、

    Article モデルのすべてのインスタンスのリストを取得します。単一の Article モデル インスタンスの詳細を取得するには、http://127.0.0.1:8000/articles// にアクセスしてください。 概要:

    この記事では、Django を使用して RESTful API を構築する方法を紹介します。上記の手順に従うことで、RESTful API を簡単に構築し、Django REST フレームワークを使用して開発プロセスを簡素化できます。 RESTful API は Web アプリケーション作成の重要な部分であるため、Django は開発者が強力な RESTful API を構築するのに役立つ優れたサポートとツールを提供します。

    以上がDjango を使用した RESTful API の構築の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート