欢迎关注我的公众号「测试游记」 如果前端请求头中没有指定Accept 默认返回json格式的数据 text/html $ http -v :8000/project/1/ Accept:text/html...所以使用 lookup_field类属性,可以修改传入的内容命名 使用 get_serializer获取序列化器 全局指定排序 在 LearnDjango/settings.py中添加 REST_FRAMEWORK...import DjangoFilterBackend 在 projects.views.ProjectsList添加 # 5.在类视图中指定过滤引擎filter_backends = [DjangoFilterBackend...在某个类中指定分页 添加 pagination_class = PageNumberPaginationManual 再次优化 借鉴 python3.7/site-packages/rest_framework.../mixins.py 查看 rest_framework.mixins.ListModelMixin class ListModelMixin: """ List a queryset.
文章目录 零、视图家族 一、GenericAPIView:视图家族的基类 二、Mixins:视图工具集 1.群查 查看源码 代码实现 测试接口 2.单查 查看源码 代码实现 测试接口 3.单增...查看源码 代码实现 测试接口 4.单改 查看源码 代码实现 测试接口 零、视图家族 Django REST framework 为了方便视图类的操作,构建了包括以下几种视图类和工具集: views...作为视图家族中重要的基类,在后面的接口代码的实现中起到重要作用。...= ‘id’ get_serializer():从类属性 serializer_class 中获得serializer 的序列化类 二、Mixins:视图工具集 mixins.py:视图工具集,用来辅助...工具类方法返回值是 Response 对象,可以用 response.data 拿到,扔给之前封装的APIResponse 类实现格式。
学习定义一个独立模块 定义函数: 定义类: 定义包: Python 中定义一个包,只需要在文件夹里面,创建一个 __init__.py文件即可,如: 那么在其他文件中,就可以通过 from mypackage...在项目开发的过程中,合理地使用库会起到锦上添花的效果。 9. 学习组织代码结构 研究怎样更好的组织项目的代码是一门管理科学。笔者之前也写过相关的文章 讨论了 Django 工程的目录组织结构。...学习让代码易维护 代码维护分为两类: Bug 易修复,需要代码具有良好的命名习惯、注释、日志输出,实现相同的功能编写尽量少的代码 新功能的扩展,通常是在原有逻辑上,创建新的分支。...提高代码复用率 随着使用新语言年限的增长,参与项目的增多,会出现一个显而易见的问题:在不同的项目中,会有一些非常类似的功能。甚至在开发新项目时,有时还会去以前项目中拷贝代码。...这时,应该思考如何提高代码的复用率,如何提供公共组件。
> project django> project Interpreter 添加一个system interpreter 选择解释器 在项目应用的models中创建数据库的类 1....是MVT的核心,负责接受请求,获取数据,返回结果 T表示template 负责呈现内容到浏览器 如果我在Django中想使用mysql该怎么配置 源代码路径:E:\enlev\django\Lib...b) 应用路由 在应用文件夹的根目录创建一个py文件,用于存放整个应用的应用路由,一般建议命名为urls.py,不建议在项目路由中配置应用路由信息 c) 视图函数 在django中,视图对WEB请求进行回应接收...name属性 然后在模板中去除url的硬编码 模板中如何使用静态资源 首先先去 主项目的setting文件中配置一个 文件目录 然后在根目录同级 创建一个 static文件夹 并创建几个子文件夹 然后在...复制轮播代码设置轮播格式 重定向如何使用 重定向是 系统解决了客户端的请求后 又由系统自动触发了一个自己的请求,然后将系统请求出来的结果 返回给客户端 eg:需要引入重定向
命令行搭建 Django 项目 创建纯净虚拟环境 在上一篇博客中已经安装好了虚拟环境,所以用虚拟环境来安装指定版本的 Django。为了可以从头到尾的走一遍流程,我重新创建了一个虚拟环境。 ?...创建项目 前往目标路径创建项目,在这里我的 django 项目都在我的家目录下面的 django_project里面。 ? 进入要创建项目的路径下,使用下面的命令创建一个 django 项目。...(相应什么,如何相应),代码逻辑处理的主要地点,项目的大部分代码所在位置 页面响应 第一个响应 通过配置路由和视图文件来响应第一次连接请求。...), ] 多应用相同模板页面冲突 如果在两个应用中均有相同的模板页面假如为index.html # 1.在应用templates文件夹下建立与应用同名的文件夹,eg:app_text下就建立app_text...') ] # 前端页面加载静态资源的路径:/static/... (...为具体在static文件夹中的路径) 拓展静态资源配置 # 如果要将项目根目录下source文件夹也作为静态资源路径 # STATICFILES_DIRS
这篇文章是看了Django官方文档并进行练习之后总结的笔记,主要总结入门需要了解的几个知识点: 使用Django创建项目。 路径匹配,一个请求路径是如何映射到对应的回调函数。...1.不含参数的url 创建的todo应用文件夹下,已经有views.py文件,在views文件夹下添加以下内容: from django.http import HttpResponse def temp...(3) 执行migrate进行迁移,也就是将代码中对数据库的表述,应用到实际的数据库上: python3 manage.py migrate 复制代码 到数据库中查看,就会发现已经新创建了一张todo...可以使用templates(模板)动态生成HTML作为响应返回,但因为实际工作中前后端分离,基本上不会用到模板,所以这个练习中只是实现接口,在Postman中观察效果,不实现界面交互。...在Postman中请求接口,在MySQL数据库中查看数据是否正确。这里的练习实现的是最简化的内容,参考即可,可以自行对代码进行完善。
典型Django开发 首先,我们需要在计算机上有一个专用目录来存储代码。 它可以放置在任何地方,但为了方便起见,如果您使用的是Mac,我们可以将其放在“桌面”文件夹中。...$ cd ~/Desktop $ mkdir code && cd code 该代码文件夹将成为本书所有代码的位置。...然后,我们创建一个BookListView类,该类指定要使用的模型和模板(尚未创建)。 在拥有一个正常工作的网页之前,需要执行两个步骤:制作模板并配置URL。 让我们从URL开始。...首先在books应用中创建一个新的模板文件夹,然后在其中创建一个books文件夹,最后是一个book_list.html文件。...然后显示模型中的每个字段。 网页 现在,我们可以启动本地Django服务器并查看我们的网页。
在这里插入图片描述 创建home.html文件 然后在templates文件夹中,创建一个名为home.html的HTML文件: templates/home.html 如何使用 for遍历列表对象,这一点类似Python的循环语句,{% for blog in blogs %}是循环的开始,{% endfor %}是本循环结束。...在使用这个HTML页面之前,我们必须告诉Django在哪里可以找到我们应用程序的模板(注:如果是利用Pycharm创建的Django项目,则会自动生成templates)。...同样,home()是在视图文件views.py中编写的一个函数,这种方式被称为“基于函数的视图”,这个函数就叫“视图函数”,后面还将学到“基于类的视图”。...render()的作用是将数据渲染到指定模板,第一个参数必须是request,然后是模板位置和所传送的数据,数据是用类字典的形式传送给模板的。
18.2.7 Django shell 输入一些数据后,就可通过交互式终端会话以编程方式查看这些数据了。这种交互式环境称 为Django shell,是测试项目和排除其故障的理想之地。...编写用户可请求的网页时,我们将使用这种语法。确认代码能获取所需的数据时,shell很有 帮助。如果代码在shell中的行为符合预期,那么它们在项目文件中也能正确地工作。...URL模式描述了URL是如何设计的,让Django知道如何将浏览器请求与网站 URL匹配,以确定返回哪个网页。 每个URL都被映射到特定的视图——视图函数获取并处理网页所需的数据。...第一个是一个 正则表达式。Django在urlpatterns中查找与请求的URL字符串匹配的正则表达式,因此正则表达 式定义了Django可查找的模式。 我们来看看正则表达式r'^$'。...这好像有点多余(我们在文件夹learning_logs中创 建了文件夹templates,又在这个文件夹中创建了文件夹learning_logs),但建立了Django能够明确 解读的结构,即便项目很大
然而,你需要使用的大多数库现在已经被移植到Python 3。 我用的是Python 3。虽然原理保持不变,但只需要很少的语法修改就可以使代码在Python 2.7.x下运行。...此代码打印出来Hello, World的控制台。您可以通过访问此站点轻松地尝试此代码,将代码示例粘贴到页面右侧的编辑器中,然后单击run页面上方的按钮以查看输出。 条件逻辑 条件逻辑同样简单。...Django中包含了许多其他有用的东西,但是随着您的进行,您可能会发现它们。我们将在本教程中使用Django来构建我们的网站。 设置 在本教程中,我将向您展示如何启动并运行Django网站。...Django templates在您的应用程序内的文件夹中查找模板,所以请继续在您的howdy应用程序文件夹中创建一个模板。...让我们编辑应用程序中的views.py文件howdy。 请注意,在第二个视图中,我没有定义一个get 方法。这只是使用这个TemplateView类的另一种方式。
在监控类管理系统,对于运维开发这块必定存在很多功能模块,例如 资产管理、中间件监控(memcached、redis等),还有ansible远程调用批量处理模块等等。 这么多的模块应该怎么拆分去写呢?...在django中,项目的组织结构为一个项目包含多个应用,一个应用对应一个业务模块。也就是说,上面说的那么多个功能模块,可以分开多个应用去逐个编写,逐个击破。...如果你是 Python 初学者,阅读官方文档中的 更多关于包的知识[1]。 mysite/settings.py:Django 项目的配置文件。...如果你想知道这个文件是如何工作的,请查看 Django settings 了解细节。 mysite/urls.py:Django 项目的 URL 声明,就像你网站的“目录”。...你的应用目录现在看起来应该是这样: 在 assetinfo /urls.py 中,输入如下代码: from django.urls import path from . import views
、svn等代码仓库管理你的代码,这里选用gitee是方便无访问国外网站,微信端可以随时通过gitee查看代码笔记的我这种懒人。...Terminal 在pycahrm中使用Terminal等效于windows的cmd,mac的终端 我为什么使用Terminal ①.由于我使用的是虚拟环境,我通过pycharm打开该项目,在Terminal...我可以直接进入该项目的虚拟环境 如图所示,前面括号里面的便是虚拟环境名称 ②.方便管理,一个项目对应一套环境,在实际工作中可以避免环境的冲突 ③.如果是用windows或者mac自带的,那么你直接在项目根目录下使用...pip,他会直接引用你环境变量中配置的第一个python环境,而不是你当前的项目的虚拟环境,除非你把虚拟环境配置到环境变量并且是第一个(使用命令where python 或 where pip查看你电脑拥有的环境变量...4.创建django项目 ①.依然在Terminal中,确认一下是在项目根目录下 ②.创建django项目(项目名自己取,我取的是XZAndroidPlatform) django-admin startproject
参考文献 Django 2.2 官方文档 近期打算基于django最新版本写一套监控类管理系统,以该项目为例,讲解django如何创建项目。...在django中,项目的组织结构为一个项目包含多个应用,一个应用对应一个业务模块。也就是说,上面说的那么多个功能模块,可以分开多个应用去逐个编写,逐个击破。...mysite/__init__.py:一个空文件,告诉 Python 这个目录应该被认为是一个 Python 包。如果你是 Python 初学者,阅读官方文档中的 更多关于包的知识。...mysite/settings.py:Django 项目的配置文件。如果你想知道这个文件是如何工作的,请查看 Django settings 了解细节。...你的应用目录现在看起来应该是这样: 在 assetinfo /urls.py 中,输入如下代码: from django.urls import path from . import views urlpatterns
在本章中,你将学习如何使用Django(http://djangoproject.com/)来开发一个名为“学习笔记”(Learning Log)的项目,这是一个在线日志系统,让你能够记录所学习的有关特定主题的知识...1.6 检查项目 下面来核实Django是否正确地创建了项目。为此,可执行命令runserver,如下所示: ? Django启动一个服务器,让你能够查看系统中的项目,了解它们的工作情况。...如果现在查看项目目录,将看到其中新增了一个文件夹learning_logs。打开这个文件夹,看看Django都创建了什么。其中最重要的文件是models.py、admin.py和views.py。...模型告诉Django如何处理应用程序中存储的数据。在代码层面,模型就是一个类,就像前面讨论的每个类一样,包含属性和方法。...我们创建应用程序learning_logs时,Django在models.py所在的目录中创建了一个名为admin.py的文件,为向管理网站注册Topic,请输入下面的代码: from django.contrib
关于如何自定义Django模板标签和过滤器,在Django的官方文档上有比较详细的介绍,但是缺少足够清晰的实例说明,所以本篇文章将以开源文档写作应用——MrDoc的源码,来演示讲解自定义Django的模板过滤器...,可以在MrDoc的开源地址:https://gitee.com/zmister/MrDoc/ 进行查看。...二、创建过滤器 在Django中自定义模板标签和过滤器,一共需要三步: 第一、在任意一个app下创建一个templatetags 包,也就是包含__init__.py文件的文件夹。...在MrDoc中,这个文件夹创建在了app_doc下,如下图所示: ? 第二、在templatetags目录下继续创建一个Python文件,文件名将会作为Django模板加载的标记名称。...其完整代码如下图所示: ? 这样,我们自定义的模板过滤器就创建好了,下一步进行调用即可。 三、调用过滤器 在文档页的视图函数中,我们会获取了文档所属文集的所有一级文档,代码如下图所示: ?
HTTP(超文本传输协议)是构建于TCP(传输控制协议)之上应用级协议,它利用了TCP提供的可靠的传输服务实现了Web应用中的数据交换。...下图是我在四川省网络通信技术重点实验室学习和工作期间使用开源协议分析工具Ethereal(抓包工具WireShark的前身)截取的访问百度首页时的HTTP请求和响应的报文(协议数据),由于Ethereal...说明2:用于开发的服务器在需要的情况下会对每一次的访问请求重新载入一遍Python代码。所以你不需要为了让修改的代码生效而频繁的重新启动服务器。...使用视图模板 上面通过拼接HTML代码的方式生成动态视图的做法在实际开发中是无能接受的,这一点大家一定能够想到。...我们可以用Django框架中template模块的Template类创建模板对象,通过模板对象的render方法实现对模板的渲染,在Django框架中还有一个名为render的便捷函数可以来完成渲染模板的操作
设置1级url地址,在项目中同名子文件夹下的url.py文件中加入对应位置加入以下语句 re_path(r'sg/', include(('school_grades.urls', 'sg'), namespace...设置2级url地址,在对应app文件夹下的url.py文件中写入以下代码(手动新建该url.py文件) from django.urls import re_path, path from .views...添加view,从上面url地址中可以看到,这个gradesinput,实际触发了一个类SGInputAndCheckView的执行,该类写在同app文件夹下的views.py文件中,代码如下 from...DOCTYPE html>{% load staticfiles %} 整体逻辑:url地址(1级+2级) -> view类 -> 渲染html文件...width=device-width,initial-scale=1,shrink-to-fit=no">是在硬件上(电脑或者手机)显示上的一些设置,这个没有仔细研究 Ps:直接展示这样一个html文件
Django 下创建对应的 app): django-admin startproject DjangoAutoServer 以上代码中,django-admin startproject 是创建 Django...server 创建完毕后会有一个文件夹是 app 文件夹: app 文件夹内容如下: 作用如下: 三、注册 app 到项目中 在 Django 中,我们需要对创建的 APP 进行注册,...目录下创建对应的 static 文件夹: 创建完毕后,在 static 文件夹中可创建不同类型的文件夹,使其静态资源分类: 此时存放一些文件到对应的文件夹中,接着回到 html 文件,在第一行使用...--加载 static 静态文件目录--> 若此时我在 static 下的 img 目录中存储了一张图片,那么此时代码如下: {% load static %}是我直接在 val dict 中所写入: 通过上图应该还可以看到,其 roles 是一个数组,那如何取到数组值呢?
有这个,说明软件可以运行django项目,没有的重新下载企业版本的pycharm ======================== 第二,看你自己的项目,查看用的数据库是sqlite数据库,还是mysql...数据库,sqlite数据库是pycahrm软件创建django项目的时候自带的,那么如何查看自己的项目是sqlite数据库,还是mysql数据库 ?...以上是项目的连接数据库的配置,一定要改为和自己的本地一样,按照箭头指的意思进行修改 如果是以上的这段代码,那么就是mysql数据库,需要将你本电脑安装的数据库的名字和密码替换到项目里面,用自己的用户名和密码...看到这个就可以了 打开pycharm软件 先将给你的项目,放到一个地方,比如,我有一个项目的名字 是 childrens 直接给你压缩包,解压后就是一个以childrens命名的文件夹,我们打开这个文件夹...目录结构是这样的,一定是这个结构,不要多导入一级的文件夹目录,只把我发给你的文件导入就行,层级关系和图里面一样,不然项目启动报错 之后打开设置 ? ? ? ? ? 一路确定 ?
其实应用没什么复杂的,不过是把功能相关的代码放到一个文件夹里,这个文件夹就成了一个应用(姑且可以这样理解)。...我们可以在 django 工程目录下手动地建立一个文件夹,为它取个名字,并且告诉 django 说这是一个应用。但是我们不必做这些无聊的工作,dango 已经为我们提供了自动创建应用的命令。...但是 django 跟我们说不用这么麻烦,我已经帮你做了一些事情,我把那一套数据库的语法转换成了 Python 的语法形式,你写你的 Python 代码就可以了,翻译的工作我来帮你。...已经在代码中做了详细的注释,说明每一句代码的含义。但如果你在移动端下阅读不便的话,也可以跳到代码后面看正文的里的讲解。 ? ? ? ?...在本教程中我们会教你这些类型的使用方法,但以后你开发自己的项目时,你就需要通过阅读 django 的官方文档关于字段类型的介绍来了解有哪些数据类型以及如何使用它们。
领取专属 10元无门槛券
手把手带您无忧上云