ホームページ バックエンド開発 Python チュートリアル Django フレームワークを使用して RESTful API を構築する

Django フレームワークを使用して RESTful API を構築する

Sep 28, 2023 pm 09:01 PM
restful api django

Django フレームワークを使用して RESTful API を構築する

Django フレームワークを使用して RESTful API を構築する

Web アプリケーションの継続的な開発に伴い、最新のアプリケーション コンポーネントにとってスケーラブルで柔軟な API を構築することが重要になってきました。人気のある開発フレームワークである Django フレームワークは、RESTful API を構築するための高速かつ信頼性の高い方法を提供します。この記事では、Django フレームワークを使用して RESTful API を構築する方法を紹介し、具体的なコード例を示します。

  1. Django プロジェクトとアプリケーションの作成
    まず、ローカル環境に Django プロジェクトを作成する必要があります。次のコマンドを使用して、「myproject」という名前のプロジェクトを作成します。
$ django-admin startproject myproject
ログイン後にコピー

プロジェクト ディレクトリに移動し、「api」という名前のアプリケーションを作成します。

$ cd myproject
$ python manage.py startapp api
ログイン後にコピー
  1. プロジェクトとアプリケーションの構成
    プロジェクトの settings.py ファイルで、「rest_framework」アプリケーションと「api」アプリケーションを INSTALLED_APPS リストに追加する必要があります。
INSTALLED_APPS = [
    ...
    'rest_framework',
    'api',
]
ログイン後にコピー

リクエスト パスを API アプリケーションに転送するように、プロジェクトの urls.py ファイルを構成する必要もあります。

from django.urls import include, path

urlpatterns = [
    ...
    path('api/', include('api.urls')),
]
ログイン後にコピー
  1. モデルとシリアライザーの作成
    アプリケーション API では、最初に API 内のリソースを表すモデル クラスを定義する必要があります。記事を例に挙げると、models.py ファイルに「Article」という名前のモデルを定義できます。
from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()
    created_at = models.DateTimeField(auto_now_add=True)
ログイン後にコピー

次に、api ディレクトリに Serializers.py という名前のファイルを作成し、「ArticleSerializer」という名前のシリアライザーを定義して、モデル インスタンスを JSON に変換する必要があります。

from rest_framework import serializers
from api.models import Article

class ArticleSerializer(serializers.ModelSerializer):
    class Meta:
        model = Article
        fields = ['id', 'title', 'content', 'created_at']
ログイン後にコピー
  1. ビューの作成
    API ディレクトリに views.py という名前のファイルを作成し、GET リクエストと POST リクエストを処理するために ArticleList という名前のクラス ビューを追加します。
from rest_framework import generics
from api.models import Article
from api.serializers import ArticleSerializer

class ArticleList(generics.ListCreateAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer
ログイン後にコピー

ArticleDetail というクラス ビューを作成して、1 つの記事に対する GET、PUT、および DELETE リクエストを処理することもできます。

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

class ArticleDetail(generics.RetrieveUpdateDestroyAPIView):
    queryset = Article.objects.all()
    serializer_class = ArticleSerializer
ログイン後にコピー
  1. URL の構成
    API ディレクトリに urls.py という名前のファイルを作成し、次のコードを追加してパスを構成します。
from django.urls import path
from api import views

urlpatterns = [
    path('articles/', views.ArticleList.as_view(), name='article-list'),
    path('articles/<int:pk>/', views.ArticleDetail.as_view(), name='article-detail'),
]
ログイン後にコピー
  1. サービスの開始
    これで、開発サーバーを実行して API をテストできます。
$ python manage.py runserver
ログイン後にコピー
  1. API のテスト
    Postman やcurl などのツールを使用して、HTTP リクエストを送信して API をテストできます。一般的な API リクエストの例をいくつか示します。
  • すべての記事の取得 (GET リクエスト):

    GET http://localhost:8000/api/articles/
    ログイン後にコピー
  • 単一の記事の取得 (GET リクエスト):

    GET http://localhost:8000/api/articles/1/
    ログイン後にコピー
  • 新しい記事の作成 (POST リクエスト):

    POST http://localhost:8000/api/articles/
    Content-Type: application/json
    
    {
      "title": "Hello",
      "content": "This is a test article."
    }
    ログイン後にコピー
  • 記事の更新 (PUT リクエスト):

    PUT http://localhost:8000/api/articles/1/
    Content-Type: application/json
    
    {
      "title": "Hello World",
      "content": "This is an updated test article."
    }
    ログイン後にコピー
  • 削除記事 (DELETE リクエスト):

    DELETE http://localhost:8000/api/articles/1/
    ログイン後にコピー

    概要:
    この記事では、Django フレームワークを使用して RESTful API を構築する方法を紹介しました。モデルとシリアライザーを作成し、ビューと URL 構成を定義することで、完全に機能する API を迅速に構築してテストできます。これは、最新の Web アプリケーションを構築し、スケーラブルなサービスを提供するための優れた基盤を提供します。 Django フレームワークを使用すると、リソースの取得、作成、更新、削除などの一般的な API ニーズを簡単に処理できます。

    (ワード数: 1063)

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

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Django vs. Flask: Python Web フレームワークの比較分析 Django vs. Flask: Python Web フレームワークの比較分析 Jan 19, 2024 am 08:36 AM

Django と Flask はどちらも Python Web フレームワークのリーダーであり、それぞれに独自の利点と適用可能なシナリオがあります。この記事では、これら 2 つのフレームワークを比較分析し、具体的なコード例を示します。開発の概要 Django はフル機能の Web フレームワークであり、その主な目的は、複雑な Web アプリケーションを迅速に開発することです。 Django は、ORM (オブジェクト リレーショナル マッピング)、フォーム、認証、管理バックエンドなどの多くの組み込み機能を提供します。これらの機能により、Django は大規模なデータを処理できるようになります。

Django フレームワークの長所と短所: 知っておくべきことすべて Django フレームワークの長所と短所: 知っておくべきことすべて Jan 19, 2024 am 09:09 AM

Django は、Web 開発ライフサイクルのあらゆる側面をカバーする完全な開発フレームワークです。現在、このフレームワークは世界中で最も人気のある Web フレームワークの 1 つです。 Django を使用して独自の Web アプリケーションを構築する場合は、Django フレームワークの長所と短所を理解する必要があります。具体的なコード例も含め、知っておくべきことはすべてここにあります。 Django の利点: 1. 迅速な開発 - Django は Web アプリケーションを迅速に開発できます。豊富なライブラリと内部を提供します。

Django バージョンをアップグレードする方法: 手順と考慮事項 Django バージョンをアップグレードする方法: 手順と考慮事項 Jan 19, 2024 am 10:16 AM

Django バージョンをアップグレードする方法: 手順と考慮事項、必要な特定のコード例 はじめに: Django は、より優れたパフォーマンスとより多くの機能を提供するために継続的に更新およびアップグレードされる強力な Python Web フレームワークです。ただし、古いバージョンの Django を使用している開発者にとって、Django のアップグレードはいくつかの課題に直面する可能性があります。この記事では、Djangoのバージョンアップの手順や注意点、具体的なコード例を紹介します。 1. Djan をアップグレードする前にプロジェクト ファイルをバックアップします。

Laravel APIのエラー問題に対処する方法 Laravel APIのエラー問題に対処する方法 Mar 06, 2024 pm 05:18 PM

タイトル: Laravel API エラーの問題に対処する方法、具体的なコード例が必要です Laravel を開発していると、API エラーが頻繁に発生します。これらのエラーは、プログラム コードのロジック エラー、データベース クエリの問題、外部 API リクエストの失敗など、さまざまな理由で発生する可能性があります。これらのエラー レポートをどのように処理するかは重要な問題であり、この記事では、特定のコード例を使用して、Laravel API エラー レポートを効果的に処理する方法を示します。 1. Laravelでのエラー処理

Oracle API使用ガイド: データ・インタフェース・テクノロジの探求 Oracle API使用ガイド: データ・インタフェース・テクノロジの探求 Mar 07, 2024 am 11:12 AM

Oracle は世界的に有名なデータベース管理システム プロバイダーであり、その API (アプリケーション プログラミング インターフェイス) は、開発者が Oracle データベースと簡単に対話して統合するのに役立つ強力なツールです。この記事では、Oracle API 使用ガイドを詳しく掘り下げ、開発プロセス中にデータ インターフェイス テクノロジを利用する方法を読者に示し、具体的なコード例を示します。 1.オラクル

Django はフロントエンドですか、バックエンドですか?それをチェックしてください! Django はフロントエンドですか、バックエンドですか?それをチェックしてください! Jan 19, 2024 am 08:37 AM

Django は、迅速な開発とクリーンなメソッドを重視した Python で書かれた Web アプリケーション フレームワークです。 Django は Web フレームワークですが、Django がフロントエンドなのかバックエンドなのかという質問に答えるには、フロントエンドとバックエンドの概念を深く理解する必要があります。フロントエンドはユーザーが直接対話するインターフェイスを指し、バックエンドはサーバー側プログラムを指し、HTTP プロトコルを通じてデータと対話します。フロントエンドとバックエンドが分離されている場合、フロントエンドとバックエンドのプログラムをそれぞれ独立して開発して、ビジネス ロジックとインタラクティブ効果、およびデータ交換を実装できます。

Oracle API統合戦略分析: システム間のシームレスな通信の実現 Oracle API統合戦略分析: システム間のシームレスな通信の実現 Mar 07, 2024 pm 10:09 PM

OracleAPI統合戦略分析: システム間のシームレスな通信を実現するには、特定のコード・サンプルが必要です。今日のデジタル時代では、社内の企業システムは相互に通信してデータを共有する必要があり、OracleAPIは、システム間のシームレスな通信を実現するための重要なツールの1つです。システム。この記事では、OracleAPIの基本概念と原則から始まり、API統合戦略について説明し、最後に読者がOracleAPIをよりよく理解して適用できるように具体的なコード例を示します。 1. 基本的な Oracle API

Django フレームワークを使用して PyCharm でプロジェクトを作成する方法 Django フレームワークを使用して PyCharm でプロジェクトを作成する方法 Feb 19, 2024 am 08:56 AM

PyCharm で Django フレームワークを使用してプロジェクトを作成する方法に関するヒント (特定のコード例が必要) Django は、Web アプリケーションを迅速に開発するための一連のツールと機能を提供する強力な Python Web フレームワークです。 PyCharm は、Python で開発された統合開発環境 (IDE) であり、開発効率を向上させる一連の便利な機能とツールを提供します。 Django と PyCharm を組み合わせると、プロジェクトの作成がより速く、より便利になります

See all articles