ページの作成

ページの作成

親となるページを選択してください。

ページは必ず何かしらの親ページに紐づきます。
親ページに紐づくページを子ページといいます。
例: 親=スポーツ, 子1=サッカー, 子2=野球

子ページを親ページとして更に子ページを作成することも可能です。
例: 親=サッカー, 子=サッカーのルール

親ページはいつでも変更することが可能なのでとりあえず作ってみましょう!
テンプレートを更新

29. 【django】APIの作成

前提

・djangoインストール済み。

・本稿ではWindows OSを例にしますが適宜読み替えて下さい。

・本稿では出来るだけAPIに関する部分のみを記述する。他に関しては別記事を参照すること。

・プロジェクト名を「api_project」とする

・適当なアプリを作成しておく。今回は「api」アプリとする。

 

必要ライブラリ

pip install djangorestframework

pip install django-filter

 

設定ファイル

api_project/settings.py

INSTALLED_APPS = (

    'api',

    'rest_framework',

)

 

モデルの作成

api/models.py

from django.db import models


class Report(models.Model):

    id = models.CharField(max_length=200, primary_key=True)

    user_id = models.CharField(max_length=200)

※DB設定はAPI固有のものではないので省きます。

※面倒なのでカラムはidのみとします。

 

シリアライザーの作成

api/models.py

from rest_framework import serializers

from .models import User, Entry


class ReportSerializer(serializers.ModelSerializer):
    class Meta:
        model = User
        fields = ('id', 'user_id')

※DB設定はAPI固有のものではないので省きます。

 

URLの設定

api_project/url.py

from django.contrib import admin

from django.urls import include, path

 

urlpatterns = [

    path('admin/', admin.site.urls),

    path('api/', include('api.urls')),

]
 

 

api/url.py

from rest_framework import routers

from .views import TestView

 

router = routers.DefaultRouter()

router.register(r'test', TestView)

上記の記述で「GET /api/test/」にアクセスできるようになる。

 

ビューの作成

api/url.py

import django_filters
from rest_framework import viewsets, filters, routers

from .models import Report
from .serializer import ReportSerializer

class TestView(viewsets.ModelViewSet):
    queryset = Report.objects.all()
    serializer_class = ReportSerializer

router = routers.DefaultRouter()
router.register(r'test', TestView)

 

動作の確認

開発サーバーを起動して「http://127.0.0.1:8000/api/test/」にアクセスする。

以下のようにレスポンスが表示されれば成功。

子ページ
子ページはありません
同階層のページ
  1. 環境構築とプロジェクト/アプリの作成
  2. MVC(MVT)のそれぞれの使い方と説明
  3. データベースへの接続と操作
  4. Django Administration
  5. git管理
  6. エラー一覧
  7. バージョンの確認方法
  8. ログ出力方法
  9. SQLのログ出力方法
  10. ログのローテート設定
  11. settings.pyの定数にアクセスする方法
  12. 本番環境へのインストールとアプリのデプロイ(apache編)
  13. 本番環境へのインストールとアプリのデプロイ(nginx編)
  14. djangoアプリの本番の開始URLを変更する
  15. 静的(static)ファイルの置き場所と読み込み(画像、css、js )
  16. CSRFトークンをAjaxで使用する方法
  17. ajaxの使用例(POST編)
  18. ファイルのアップロードとファイルの名前
  19. クイックスタート/チュートリアル
  20. ログイン機能
  21. テンプレート側のログイン判定
  22. ビュー側のログイン判定
  23. 管理者ユーザーの作成/判定と管理画面
  24. モデルのjson化とレスポンス
  25. runserverでポートを指定する方法
  26. cronによるバッチ実行
  27. テンプレートで利用する共通のcontextを定義する方法
  28. プログラムが本番サーバーで反映されない場合の対処法
  29. APIの作成

最近の質問

コメント一覧

    No.109 | guest | 2021-12-20 23:09:21

    Images Of Generic Amoxil Tablets

    No.106 | guest | 2021-12-20 04:31:46

    Viagra Sale Online

    No.97 | guest | 2021-12-11 11:36:04

    Amoxicillin Root Canal

    No.86 | guest | 2021-12-04 07:33:03

    Prix Cialis En Belgique

    No.78 | guest | 2021-11-12 18:50:48

    Propecia Receding Hair Growth

    No.77 | guest | 2021-11-12 08:46:15

    Viagra A 16 Ans

    No.74 | guest | 2021-11-08 21:09:03

    Prozac Free Sample

    No.73 | guest | 2021-11-08 21:03:59

    Retrovir

    No.71 | guest | 2021-11-07 05:53:34

    Amoxicillin Pictures

    No.70 | guest | 2021-11-06 14:41:11

    Propecia Rezeptfrei

    No.66 | guest | 2021-11-02 13:05:05

    Viagra 25mg Ch

    No.63 | guest | 2021-10-31 22:22:24

    Generic Pharmacy Review

    No.61 | guest | 2021-10-31 06:54:59

    Viagra Da 25

    No.56 | guest | 2021-10-08 11:17:59

    kamagra from usa

    No.51 | guest | 2021-10-01 02:08:44

    Cialis Corazon

    No.49 | guest | 2021-09-25 05:34:56

    buy accutane isotretinoin online

    No.48 | guest | 2021-09-23 05:59:50

    Viagra Rezept Apotheke

    No.47 | guest | 2021-09-22 23:39:05

    Efectos Secundarios Kamagra Oral Jelly

    No.37 | guest | 2021-09-15 02:17:39

    cialis prix conseille

    No.34 | guest | 2021-09-11 18:38:24

    Buy Viagra Super Active Online

    No.32 | guest | 2021-09-09 23:11:48

    Where To Purchase Prednisone

    No.30 | guest | 2021-09-08 08:04:50

    Amoxicillin Threat Meningitis

    No.29 | guest | 2021-09-07 20:34:26

    best gay dating usernames gay radar oline dating [url="gayonlinedating.net?"]gay fat dating[/url]

    No.18 | guest | 2021-08-27 05:33:09

    Priligy Generika Dapoxetine