1.下载djangorestframework
pip install django
pip install djangorestframework
2.创建项目
django-admin startproject 项目名
cd 项目名
3.创建app
python manage.py startapp app名
4.进入 tutorial/settings.py ,找到 INSTALLED_APPS 添加
INSTALLED_APPS = [
...
'rest_framework',
'snippets',
]
5.进入 tutorial/settings.py 更改数据库配置
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
"NAME": "scores",
"USER": "root",
"PASSWORD": "wangkaiyue0117",
"HOST": "127.0.0.1",
"PORT": "3306",
}
}
6.进入 snippets/models.py 添加 Class
class Snippet(models.Model):
created = models.DateTimeField(auto_now_add=True)
title = models.CharField(max_length=100, blank=True, default='')
code = models.TextField()
class Meta:
ordering = ['created']
7.创建数据库
(1)项目数据库
python manage.py makemigrations
python manage.py migrate
(2)app数据库
python manage.py makemigrations snippets
python manage.py migrate snippets
8.序列化 进入 Snippet/serializers.py 添加
from rest_framework import serializers
from snippets.models import Snippet
class SnippetSerializer(serializers.ModelSerializer):
class Meta:
model = Snippet
fields = ['id', 'created', 'title', 'code']
9.进入 snippets/views.py 添加
from snippets.models import Snippet
from snippets.serializers import SnippetSerializer
from rest_framework import generics
class SnippetList(generics.ListCreateAPIView):
queryset = Snippet.objects.all()
serializer_class = SnippetSerializer
class SnippetDetail(generics.RetrieveUpdateDestroyAPIView):
queryset = Snippet.objects.all()
serializer_class = SnippetSerializer
10.绑定url
(1)进入 snippets/urls.py 添加
from django.urls import path
from snippets import views
urlpatterns = [
path('snippets/', views.snippet_list),
path('snippets/<int:pk>/', views.snippet_detail),
]
(2)进入 tutorial/urls.py 添加
from django.urls import path, include
urlpatterns = [
path('', include('snippets.urls')),
]