Django框架之DRF(武沛齐全)
Django REST framework (DRF) 是一个建立在 Django 之上的 Web 框架,用于快速构建Web API。以下是使用 Django REST framework 创建一个简单的 Web API 的步骤和示例代码:
- 安装 Django REST framework:
pip install djangorestframework
- 在 Django 项目的
settings.py
文件中添加rest_framework
到INSTALLED_APPS
:
INSTALLED_APPS = [
# ...
'rest_framework',
]
- 创建一个新的 Django app 来存放我们的视图,例如
books
:
python manage.py startapp books
- 在
books/models.py
中定义一个模型:
from django.db import models
class Book(models.Model):
title = models.CharField(max_length=100)
author = models.CharField(max_length=100)
published_date = models.DateField()
- 运行迁移来创建数据库表:
python manage.py makemigrations
python manage.py migrate
- 在
books/serializers.py
中创建一个序列化器:
from rest_framework import serializers
from .models import Book
class BookSerializer(serializers.ModelSerializer):
class Meta:
model = Book
fields = '__all__'
- 在
books/views.py
中创建一个视图:
from rest_framework import viewsets
from .models import Book
from .serializers import BookSerializer
class BookViewSet(viewsets.ModelViewSet):
queryset = Book.objects.all()
serializer_class = BookSerializer
- 在
books/urls.py
中添加路由:
from django.urls import path, include
from rest_framework.routers import DefaultRouter
from .views import BookViewSet
router = DefaultRouter()
router.register(r'books', BookViewSet)
urlpatterns = [
path('', include(router.urls)),
]
- 在项目的
urls.py
文件中导入 books 应用的 urls:
from django.urls import path, include
urlpatterns = [
# ...
path('books/', include('books.urls')),
]
现在,你已经有了一个简单的 Web API,可以通过以下 URL 访问:
- 获取所有书籍:
http://example.com/books/
- 创建一本新书:
http://example.com/books/
- 获取一本书:
http://example.com/books/{id}/
- 更新一本书:
http://example.com/books/{id}/
- 删除一本书:
http://example.com/books/{id}/
这个简单的例子展示了如何使用 Django REST framework 快速创建一个管理书籍信息的 Web API。
评论已关闭