什么是 Django Rest 框架?

什么是 django rest 框架?

在这篇文章中,我将解释Rest Framework。在讨论技术细节之前,我们先来谈谈什么是 Rest Framework。
Rest Framework 是一个高级框架,允许我们为移动应用程序、Web 应用程序和桌面应用程序编写通用后端。例如,您可以在移动应用程序和 Web 应用程序中使用使用 Rest Framewok 编码的后端服务器。
您可以使用 Rest Framework 结合 Angular、React、Vue 等前端技术来开发应用程序。由于 Rest Framework 在编程中以通用结构提供响应,因此您可以将这些输出与 Angular 或 React 一起使用。那么这些输出有哪些类型呢?当然还有像 JSON 这样的结构。当然,您也可以选择将这些输出以不同的结构发送到前端。现在让我们继续编码

创建项目
1) django-admin startproject projeName

我们已经创建了我们的项目。现在让我们运行我们的项目。

2)python管理.py runserver

然后,让我们编写必要的命令来在数据库中创建必要的表。

3) python 管理.py 迁移

别忘了将我们创建的应用程序添加到settings.py文件下的INSTALLED_APPS目录中。
一切都好。现在我们可以继续执行其余框架的必要步骤。
要在我们的计算机上安装 Rest Framework,我们需要在终端中运行以下命令。

1)pip 安装 djangorestframework
例如;
已安装的应用程序 = [
‘django.contrib.admin’,
‘django.contrib.auth’,
‘django.contrib.contenttypes’,
‘django.contrib.sessions’,
‘django.contrib.messages’,
‘django.contrib.staticfiles’,
‘rest_framework’,
‘POSTAPP’,

现在我们已经添加了Rest框架,我们可以开始创建API了。为此,我们需要在我们创建的应用程序文件夹中创建一个名为 API 的文件夹和一些文件。让我们添加这些文件:

YOUR_PROJECT/
API/
init.py
视图.py
url.py
序列化器.py

通过 ** init.py** 文件,我们表明这个文件夹是一个 Python 模块
views.py ** 文件是我们将编写类或函数的文件,这些类或函数将提供我们将发送给传入请求的答案。
**urls.py
文件是我们将在其中设置 API url 的文件,正如您可以从 Django 的结构中猜到​​的那样。
serializers.py 文件是我们将在其中编写结构的文件,这些结构会将传入的查询集转换为我们想要的格式(例如 JSON)。我们将逐渐详细介绍这一点。
首先,我们进入项目主文件夹中准备好的 urls.py 文件,并根据我们创建的 API 文件夹定义 url 路径。

urlpatterns = [
路径(‘admin/’, admin.site.urls),
路径(“api / post /”,包括(“YOUR_PROJECT.api.urls”,namespace =“post”)),

我们已经有一个管理路径。我们还添加了一个新路径 api/post。使用 Include 方法,我们将传入 api/post/ 的请求重定向到我们创建的 API 文件夹中的 url 文件。
现在,让我们快速为我们创建的帖子编写一个模型。让我们来看看YOUR_PROJECT文件夹中的models.py文件。

类 PostModel(models.Model):
作者 = models.ForeignKey(User,on_delete=models.CASCADE)
标题 = models.CharField(max_length=50)
内容 = models.TextField()
Draft = models.BooleanField(default=False)
ModifiedDate = models.DateTimeField(editable=False)

创建模型后,让我们在终端中编写必要的代码以在数据库中创建表。

python管理.py makemigrations

使用这些代码,我们创建了在数据库中创建表所需的 Python 文件。我们将运行以下命令来创建表。

*python管理.py迁移*

现在让我们来看看我们创建的 YOUR_PROJECT 目录下 api 文件夹中的空 urls.py 文件。

来自 django.urls 导入路径
从 .views 导入 YourProjectAPIView

app_name=”帖子”
urlpatterns = [
路径(“列表/”,YourProjectAPIView.as_view(),name =“your_project”),

首先,我们用 app_name=”post” 指定一个应用程序名称。
现在,我们尝试导入尚未创建的视图,并尝试根据我们的路径使用它们。让我们立即创建视图,其名称已写入 YOUR_PROJECT/api 目录下的views.py 文件中。
首先,让我们创建一个视图,在该视图中我们将使用 JSON 结构的请求发送数据库中的所有帖子。

从 POSTAPP.models 导入 PostModel
从rest_framework.generics导入ListAPIView

类 PostListAPIView(ListAPIView):
serializer_class = PostSerializer
queryset = PostModel.objects.all()

让我们解释一下我们在这里做了什么。我们使用 ListAPIView 类创建了一个视图,该类为 Rest Framework 中的列表过程做好了准备。首先,我们确定将使用查询集变量返回哪个模型。我们需要指定序列化器类,它将序列化来自该模型的数据,即查询集。毕竟我们不会向对方发送查询集。我们将发送序列化的 JSON 对象。将查询集转换为 JSON 对象的结构将是我们将创建的序列化器。
现在,我在serializer_class变量中创建了一个名为PostSerializer的序列化器。我们将在同一目录中的serializers.py 文件中创建此序列化器。现在让我们来创建它吧。

从rest_framework导入序列化器

类 YourProjectSerializer(serializers.ModelSerializer):
类元:
模型 = PostModel
fields = [“作者”,”标题”,”内容”,’草稿’,’修改日期’]

以上就是什么是 Django Rest 框架?的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/1348690.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2025年12月13日 12:15:53
下一篇 2025年12月13日 12:16:05

相关推荐

  • python怎么输入字符

    在 Python 中使用 input() 函数可以从用户获取字符输入。步骤包括:将 input() 函数存储在变量中。提供提示消息(可选)。将用户输入的字符值分配给变量。 如何在 Python 中输入字符 在 Python 中,您可以使用 input() 函数从用户获取字符输入。 语法: input…

    好文分享 2025年12月13日
    000
  • Python – 列出方法和任务 II

    尽管我之前已经完成了这些任务,但今天在课堂上看到它们的完成教会了我新的东西。 我了解到我可以更多地使用 Python 内置的列表方法,而不是一直回到 for 循环。 例如,我可以使用extend方法(而不是for循环和append方法)用另一个列表的内容来扩展一个列表。同样,我可以使用clear方法…

    2025年12月13日
    000
  • 拒绝服务正则表达式破坏了 FastAPI 安全性

    欢迎各位开发者!在这篇博文中,我们将深入研究应用程序安全领域,特别关注可能恶化 fastapi 安全性的漏洞:由不安全的正则表达式 (regex) 导致的拒绝服务 (dos)。我们将探讨构造不良的正则表达式如何导致所谓的正则表达式拒绝服务 (redos)(一种 dos 攻击),以及如何使用强大的开发…

    2025年12月13日
    000
  • 成为百万富翁

    这是为《谁想成为百万富翁》编写代码的一种简单方法,您猜对了。老少皆宜的热门常识游戏。 这是我在 Codecademy 上的 Python 编码初学者项目。它提供了关于如何在 Codecademy 环境之外进行编码的急需经验,我希望借此能够提高我的编码技能,并为工作场所做好更好的准备。 下面附上链接。…

    2025年12月13日
    000
  • 数学在机器学习中的重要性:初学者的观点

    当我第一次开始机器学习之旅时,我很高兴能深入算法、数据和预测的世界。然而,我很快意识到,要真正理解并在这个领域取得优异成绩,扎实掌握数学是至关重要的。随着我继续学习 Python 并探索机器学习的深度,我开始认识到数学在构建模型、优化性能和做出准确预测方面所发挥的关键作用。 为什么数学在机器学习中很…

    2025年12月13日
    000
  • Python 中使用 NLTK 进行单词替换和更正

    当我们谈论自然语言处理(nlp)时,最重要的任务之一就是替换和纠正单词。这涉及词干提取、词形还原、拼写纠正以及基于同义词和反义词的单词替换等技术。使用这些技术可以极大地提高文本分析的质量,无论是搜索引擎、聊天机器人还是情感分析。让我们探索一下 python 中的 nltk 库如何帮助完成这些任务。 …

    2025年12月13日
    000
  • 如何使用 Beautiful Soup 从公共网络中提取数据

    beautiful soup 是一个用于从网页中抓取数据的 python 库。它创建用于解析 html 和 xml 文档的解析树,从而可以轻松提取所需的信息。 beautiful soup 为网页抓取提供了几个关键功能: 导航解析树:您可以轻松导航解析树并搜索元素、标签和属性。修改解析树: 它允许您…

    2025年12月13日
    000
  • 软件开发的坚实原则

    在软件开发领域,solid 原则是一组五个设计原则,旨在创建健壮、可维护和可扩展的软件系统。这些原则由 robert c. martin(也称为 bob 叔叔)提出,为开发人员提供了遵循的指南,以确保他们的代码库干净且可扩展。在这里,我们将探索每个 solid 原则,并通过 python 示例演示如…

    2025年12月13日
    000
  • “警惕时间复杂度陷阱”

    警惕时间复杂度陷阱 写在这里 一个bilibili视频也展示了这个:[bilibili视频][https://www.bilibili.com/video/bv16u4m1c7cu/?spm_id_from=333.999.0.0] 我觉得这是一个很好的视频,但它的语言是中文。 时间复杂度 时间复杂…

    2025年12月13日
    000
  • 在 Python 中使用 SQLAlchemy 创建关系

    当尝试创建 sql 表时,sqlalchemy 可以帮助完成 python 中所需的许多任务,其中之一就是创建关系。 使用 sqlalchemy 创建关系比仅使用 sql 容易得多。它通过更易于遵循的语法和更少的步骤来简化流程。 sqlalchemy 已导入 python,所有快捷语法都可以使用。 …

    2025年12月13日
    000
  • Python – 列表和任务

    学习索引和切片之后,我们开始更多地了解列表和内置方法。方法有 不返回 追加插入删除排序反转清晰 返回整数 索引数数 返回str 立即学习“Python免费学习笔记(深入)”; 流行 对于交付列表的较小更改,内置功能本身就足够了。但是当我们想要对列表进行更多操作时,就需要for循环、if循环。 例如,…

    2025年12月13日
    000
  • Python:全面介绍

    Python 是一种高级解释型编程语言,以其简单性、可读性和多功能性而闻名。 Python 由 Guido van Rossum 创建并于 1991 年首次发布,现已成为世界上最流行的编程语言之一。其设计理念强调代码可读性和显着缩进的使用,使其成为初学者和经验丰富的开发人员的理想选择。Python …

    2025年12月13日
    000
  • python怎么加入库

    Python 中导入库有两种方法:使用 import 语句导入整个库。使用 from … import … 语句导入特定模块或函数。选择导入方法时,考虑代码的可读性和性能:需要导入大量模块或函数时使用 import,需要一个或几个特定模块或函数时使用 from ……

    2025年12月13日
    000
  • python怎么更改安装路径

    Python 的安装路径可以根据系统进行更改:Windows:在自定义安装中指定目标文件夹。macOS:在自定义安装中选择安装位置。Linux:在配置安装时使用 –prefix 选项指定自定义路径。 如何在 Python 中更改安装路径 引言Python 的默认安装路径通常是各个操作系统…

    2025年12月13日
    000
  • python怎么调颜色

    Python中调整图像颜色的方法:使用Pillow库进行亮度、对比度和饱和度调节。使用NumPy和OpenCV进行颜色空间转换和掩蔽。使用PIL库进行逐像素颜色调整和滤镜应用。使用recolor()函数进行颜色量化重新着色。使用colorcet库提供高质量颜色图进行自定义配色。 Python中调整颜…

    2025年12月13日
    000
  • python怎么修改代码

    修改 Python 代码分为以下步骤:识别需要修改的代码部分。完成所需的修改,包括更正错误、添加功能或优化代码。保存更改并测试程序以验证修改。提交更改至版本控制系统(团队项目)。持续检查代码并进行改进。 如何修改 Python 代码 修改 Python 代码至关重要,以修复错误、添加新功能或提升性能…

    2025年12月13日
    000
  • python怎么换字体颜色

    Python 中更改字体颜色有两种方法:使用 ANSI 转义序列和使用 colorama 等第三方库。通过 ANSI 转义序列,可以使用控制台终端的特殊字符序列更改颜色,例如 “33[1;31m” 表示红色。colorama 库提供了更方便的 API,如 Fore.RED 表…

    2025年12月13日
    000
  • python怎么把图片放进窗口

    通过使用 Tkinter 库,可以将图片放入 Python 窗口中。具体步骤包括:导入 Tkinter 库;创建一个窗口;创建一个图像对象;创建一个标签并设置图像;启动主事件循环。 如何在 Python 中将图片放入窗口 在 Python 中,可以通过使用 Tkinter 库将图片放入窗口中。以下是…

    2025年12月13日
    000
  • python怎么打开白色窗口

    可以使用 Tkinter、Pyglet 或 PyQt 在 Python 中创建白色背景的窗口。具体方法包括:使用 Tkinter 的 config(background=”white”) 方法;使用 Pyglet 的 set_clear_color(255, 255, 255…

    2025年12月13日
    000
  • python怎么改成白色

    Python 终端默认背景色为黑色,要更改为白色,可执行以下步骤:通过命令行安装 colorlog 并在 shell 中设置环境变量。打开 IDLE 并配置“终端 Shell”部分的背景颜色。使用其他终端仿真器(如 Cmder 或 iTerm2)调整背景色选项。 如何将 Python 终端改成白色 …

    2025年12月13日
    000

发表回复

登录后才能评论
关注微信