Django前後端分離のREST framework初試験
4376 ワード
これまでdjangoを習ったばかりの頃、静的リソースとインタフェースの分離方法を無理に使っていたが、実際の使用では不便になるに違いない.そこで,前後端分離のためにバックグラウンドAPIを記述するREST frameworkフレームワークが見つかった.ここで初歩的な試みをする公式文書は非常に入門しているように見えますが、今回の実践は主に公式文書の手順に基づいて初歩的な実践を行い、その中に自分が勉強したときに理解した注釈を加えて、翻訳が正しいことを保証することはできません.すべての参考リンクは文末に置きましょう.
一、プロジェクトのインストール
まずdjangoとdjangorestframeworkのインストール
多くの人がインストールすべきでしょう
公式サイトdemoによるアプリのインストール
次に、データベースの移行
次に、管理者ページとユーザーを作成します.
二、Serializer(シーケンサ)配置
いくつかの構成を定義し、次のコードを記述する
三、ビュー構成
四、URL
五、設定
六、ブラウザテストを開く
サーバー起動後ブラウザ入力
右上隅でログインをクリックしてください
七、参考リンク
djangoユーザ認証メカニズム:https://docs.djangoproject.co...Serializerとは何か:http://www.django-rest-framew...Serializer relationsとは何か:http://www.django-rest-framew...viewsetsとは何か:http://www.django-rest-framew...urlとre_path中rとは何か:https://www.cnblogs.com/xuchu...urlとpathの違い:https://blog.csdn.net/endless...
! !
公式文書アドレス先置き:http://www.django-rest-framew...一、プロジェクトのインストール
まずdjangoとdjangorestframeworkのインストール
pip install django
pip install djangorestframework
多くの人がインストールすべきでしょう
公式サイトdemoによるアプリのインストール
django-admin.py startproject tutorial
django-admin.py startapp quickstart
次に、データベースの移行
python manage.py migrate
次に、管理者ページとユーザーを作成します.
python manage.py createsuperuser --email [email protected] --username admin
二、Serializer(シーケンサ)配置
いくつかの構成を定義し、次のコードを記述する
tutorial/quickstart/serializers.py
モジュールを作成するfrom django.contrib.auth.models import User, Group # django User Group
from rest_framework import serializers # rest framework serializers
class UserSerializer(serializers.HyperlinkedModelSerializer): #
class Meta:
model = User # User model
fields = ('url', 'username', 'email', 'groups') #
class GroupSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Group # Group model
fields = ('url', 'name')
三、ビュー構成
tutorial/quickstart/views.py
次のコードを作成します(renderはコメントできますか?)
#from django.shortcuts import render
from django.contrib.auth.models import User, Group # model
from rest_framework import viewsets # viewsets, controllers
# from tutorial.quickstart.serializers import UserSerializer, GroupSerializer ,
from quickstart.serializers import UserSerializer, GroupSerializer #
# Create your views here.
class UserViewSet(viewsets.ModelViewSet):
queryset = User.objects.all().order_by('-date_joined') #
serializer_class = UserSerializer #
class GroupViewSet(viewsets.ModelViewSet):
queryset = Group.objects.all()
serializer_class = GroupSerializer
四、URL
tutorial/urls.py
URL作成
from django.contrib import admin
from django.urls import path, re_path
#rest
from django.conf.urls import url, include
from rest_framework import routers
# from tutorial.quickstart import views ,
from quickstart import views
router = routers.DefaultRouter() #
router.register(r'users', views.UserViewSet) #
router.register(r'groups', views.GroupViewSet)
# :path ,url , , re_path
urlpatterns = [
path('admin/', admin.site.urls),
#rest
re_path(r'^', include(router.urls)), # url
url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')) #
]
五、設定
tutorial/settings.py
下取付けINSTALLED_APPS = (
...
'rest_framework',
)
六、ブラウザテストを開く
python manage.py runserver
サーバー起動後ブラウザ入力
http://127.0.0.1:8000
インタフェーステストページへ右上隅でログインをクリックしてください
七、参考リンク
djangoユーザ認証メカニズム:https://docs.djangoproject.co...Serializerとは何か:http://www.django-rest-framew...Serializer relationsとは何か:http://www.django-rest-framew...viewsetsとは何か:http://www.django-rest-framew...urlとre_path中rとは何か:https://www.cnblogs.com/xuchu...urlとpathの違い:https://blog.csdn.net/endless...