【后端】Django与Django REST Framework的结合使用

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档

文章目录


前言

随着开发语言及人工智能工具的普及,使得越来越多的人会主动学习使用一些开发语言,本文主要介绍Django与Django REST Framework的结合使用。


一、创建django项目

创建Django项目通常包括以下步骤:

  1. 安装Django: 首先,确保你的系统中已经安装了Python。然后使用pip(Python包管理器)安装Django。在命令行中执行以下命令:
bash 复制代码
pip install django
  1. 创建Django项目: 在你选择存放项目的目录中,执行以下命令来创建一个Django项目:
bash 复制代码
django-admin startproject myproject

这将创建一个名为myproject的Django项目目录,其中包含一些默认的文件和目录结构。

  1. 进入项目目录: 进入到刚刚创建的项目目录:
bash 复制代码
cd myproject
  1. 运行开发服务器: 在项目目录下执行以下命令来启动Django的开发服务器:
bash 复制代码
python manage.py runserver

默认情况下,开发服务器会在本地启动,监听在8000端口。你可以在浏览器中访问http://127.0.0.1:8000/来查看Django的欢迎页面。

注意事项 :运行之前需要配置好本地数据库连接,而数据库访问要提前安装mysql驱动。


  1. 创建应用程序: Django项目可以包含一个或多个应用程序。应用程序是Django的组件,用于处理特定功能或模块。你可以使用以下命令创建一个新的应用程序:
bash 复制代码
python manage.py startapp myapp

这将创建一个名为myapp的应用程序目录,其中包含一些默认的文件和目录结构。

  1. 配置数据库 : 默认情况下,Django使用SQLite作为开发环境下的默认数据库。如果你想使用其他数据库,比如MySQL、PostgreSQL等,你需要在项目的settings.py文件中进行相应的配置。要注意的是下图的配置需要在访问运行开发服务器前进行。

  2. 定义模型 : 在应用程序中定义模型类,用于描述数据结构和关系。你可以在models.py文件中定义模型类,并且通过Django的ORM来操作数据库。

  3. 编写视图和URL路由 : 在应用程序中编写视图函数,用于处理HTTP请求,并且配置URL路由来将URL映射到相应的视图函数上。

  4. 创建模板: 在应用程序中创建模板文件,用于生成HTML页面。你可以使用模板语言来动态地渲染页面内容。

  5. 运行迁移: 在定义了模型后,你需要执行数据库迁移操作,将模型映射到数据库表中。执行以下命令来运行迁移:

bash 复制代码
python manage.py makemigrations
python manage.py migrate

这将创建数据库表和字段,使其与模型定义保持同步。

  1. 编写业务逻辑 : 编写应用程序的业务逻辑,包括处理用户请求、查询数据库、处理数据等操作。

  2. 测试和调试: 编写单元测试和集成测试来确保应用程序的功能正常运行,并且进行必要的调试和优化。

通过以上步骤,你可以创建一个基本的Django项目,并且开始开发你的应用程序。记得查阅Django官方文档以获取更多详细的信息和指南。

二、django与rest framework的交互

Django和Django REST Framework(简称DRF)是两个非常强大的Python web框架。结合它们可以构建出功能丰富、高效的Web应用程序,特别是针对RESTful API的开发。

下面是使用Django和DRF结合的一般步骤:

  1. 安装Django REST Framework:使用pip安装Django REST Framework。
bash 复制代码
pip install djangorestframework
  1. 配置Django REST Framework :将DRF添加到Django项目的INSTALLED_APPS中,并配置任何其他必要的设置。
python 复制代码
# settings.py

INSTALLED_APPS = [
    ...
    'rest_framework',
    'myapp',
    ...
]
  1. 定义序列化器:在Django应用程序中定义序列化器,序列化器用于将模型实例转换为JSON等格式,并反之亦然。
python 复制代码
# serializers.py

from rest_framework import serializers
from .models import MyModel

class MyModelSerializer(serializers.ModelSerializer):
    class Meta:
        model = MyModel
        fields = '__all__'
  1. 定义视图:在Django应用程序中定义基于DRF的视图,这些视图负责处理HTTP请求并返回适当的响应。
python 复制代码
# views.py

from rest_framework import viewsets
from .models import MyModel
from .serializers import MyModelSerializer

class MyModelViewSet(viewsets.ModelViewSet):
    queryset = MyModel.objects.all()
    serializer_class = MyModelSerializer
  1. 配置URL路由:在项目的URL配置文件中,将DRF的路由器与视图关联起来。
python 复制代码
# urls.py

from django.urls import path, include
from rest_framework.routers import DefaultRouter
from myapp.views import MyModelViewSet

router = DefaultRouter()
router.register(r'mymodels', MyModelViewSet)

urlpatterns = [
    path('', include(router.urls)),
]
  1. 运行开发服务器:最后,使用Django的开发服务器运行项目,并确保一切正常。
bash 复制代码
python manage.py runserver

现在,您的Django项目已经集成了Django REST Framework。


三、总结

以上就是今天要讲的内容,本文简单介绍了Django项目的创建及与REST Framework的结合使用。在上面项目示例中也介绍了具体项目中是如何操作使用的,日常我们可以通过RESTful API来管理数据模型,并且可以通过访问相应的URL来访问和操作资源。

相关推荐
mushangqiujin6 分钟前
python爬虫 线程,进程,协程
开发语言·爬虫·python
蜂酷科技资讯7 分钟前
如何提高编程效率 ? 用 文心快码Zulu 轻松搞定电子邀请函
python
Eva21566515 分钟前
Flask+Influxdb+grafna构建电脑性能实时监控系统
后端·python·flask
北京地铁1号线27 分钟前
菊厂20250416软件机考T2解答(200分)
python·算法
这里有鱼汤29 分钟前
Python 列表不香了?聊聊 NumPy 为什么更快更强!
后端·python
Awesome Baron36 分钟前
Langchain + Gemini API调用基本操作
python·langchain·llm
这里有鱼汤43 分钟前
史上最强量化工具库 Ta-Lib 从入门到精通,一篇文章就够了!🎯
python
188_djh1 小时前
# 使用python写一个PDF文件转换成word 文件
python·pdf·word·python-docx·pypdf2·python3.9·pdf_to_word.py
@正在学习驰骋的小马1 小时前
一、小白如何用Pygame制作一款跑酷类游戏(成品展示+添加背景图和道路移动效果)
python·游戏·pygame
KENYCHEN奉孝2 小时前
一个基于Django的写字楼管理系统实现方案
数据库·python·django·sqlite