首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

Django 教程 --- Django视图

根据Django文档,视图函数是一个Python函数,它接受Web请求并返回Web响应。此响应可以是网页HTML内容,重定向,404错误,XML文档或图像(Web浏览器可以显示任何内容) ?...要检查如何使用DjangoMVT(模型,视图,模板)结构制作基本项目,请访问创建项目Django视图类型 Django视图分为两大类: 基于功能视图 基于类视图 ?...基于功能视图 基于函数视图是使用python函数编写,该函数以HttpRequest对象作为参数并返回HttpResponse对象。...Django CRUD(创建,检索,更新,删除)基于功能视图:- 创建视图–基于函数视图Django 细节视图–基于函数视图Django 更新视图–基于函数视图Django 删除视图–基于函数视图...Django 基于类视图 基于类视图提供了一种将视图实现为Python对象而非函数替代方法。

3K30

Djangourl与视图详解(2)

本文链接:https://blog.csdn.net/weixin_43908900/article/details/94892086 Djangourl与视图详解(2) url命名: 因为url...如果在代码写死可能会经常改代码。给url取个名字,以后使用url时候就使用他名字进行反转就可以了,就不需要写死url了。...,因为在现实环境,一个项目不能是一个人完成,为了避免在反转时候出现混淆,我们需要在APP中指定应用命名,例如: # 应用命名空间 app_name = 'front' urlpatterns =...实例命名空间也是非常简单,只要在``include函数传递一个namespace`变量即可: urlpatterns = [ path('',include('front.urls')),...re_path相关操作: 注意点:写正则表达式是使用标志性原生字符串·“r”开头,在正则表达式定义变量,需要使用圆括号括起来。这个参数是有名字,那么需要使用?P。

1.1K20
您找到你想要的搜索结果了吗?
是的
没有找到

Djangourl与视图详解(3)

Djangourl与视图详解(3) 可能你学习这里,感觉好乱,所将知识点没有一丝关联,这个是没有办法Django与Flask有所不同Django是结构化,每个模块都有知识点,我们只有先了解...reverse函数(反转): 如果在反转url时候,需要添加参数,那么可以传递kwargs参数到revers函数。...在类定义一个属性regex,这个属性是用来限制URL转换器规则正则表达式。 实现to_python(self,value)方法,这个方法是将URL值转换一下,然后传给视图函数。...将定义好转换器,使用django.urls.converters.register_converter方法注册Django。...解释: 当在访问blog/时候,因为没有传递num参数,所以会匹配到第一个URL,这时候就执行view.page这个视图函数,而在page函数,又有num=1这个默认参数。

1.4K20

Django2.0文(重定向)

重定向:例如:/news--> /xx/yy/news 将 ‘django.contrib.redirects’ 添加到 INSTALLED_APPS 设置。...一旦创建了重定向,RedirectFallbackMiddleware类将完成所有工作。每当Django应用引发一个404错误,作为终极手段,该中间件将为所请求URL在重定向数据库中进行查找。...如果找到匹配项,并且new_path非空,它将重定向new_path; 如果找到匹配项,单new_path为空,它将发送一个410HTTP头信息以及一个空向应。...增加、变更删除重定向 通过管理界面: 如果已经激活了全自动Django超级管理界面,你应该能够在超级管理首页看到重定向区域。可以像编辑系统其他对象一样编辑重定向。...重定向表现为django/contrib/redirects/models.py一个标准Django模型。所以可以通过Django数据库API来存取重定向对象。

53820

django视图-11

创建类视图 使用类视图,代码是这样子 from django.views import View class ClassView(View): def get(self, request...django提供 View 类,使用 from django.views import View 导入 注册路由 配置类视图时候,使用类视图 as_view 方法注册路由 urlpatterns...View ,执行 dispatch 方法, dispatch 会方法会在类查找类似GET\POST之类类方法,然后和请求方式进行匹配,匹配上了,就返回该方法引用。...如果向上边视图发送一个 GET 请求,他会把 GET 转换为小写形式并和类方法进行匹配,然后匹配到 get 方法,会把 get 方法引用返回到 as_view 调用处。...print('装饰器被调用') return func(request, *args, **kwargs) return wrapper 而在类视图方法,第一个参数是 self

74130

真正 Django 博客首页视图

在此之前我们已经编写了 Blog 首页视图,并且配置了 URL 和模板,让 Django 能够正确地处理 HTTP 请求并返回合适 HTTP 响应。...首页视图函数 上一节我们阐明了 Django 开发流程。即首先配置 URL,把 URL 和相应视图函数绑定,一般写在 urls.py 文件里,然后在工程 urls.py 文件引入。...其次是编写视图函数,视图中需要渲染模板,我们也在 settings.py 中进行了模板相关配置,让 Django 能够找到需要渲染模板。最后把渲染完成 HTTP 响应返回就可以了。...同样我们需要对 Django 做一些必要配置,才能让 Django 知道如何在开发服务器引入这些 CSS 和 JavaScript 文件,这样才能让博客页面的 CSS 样式生效。...image.png 如图所示,你会看到首页显示样式非常混乱,原因是浏览器无法正确加载 CSS 等样式文件。

3.5K80

Django 官方推荐姿势:类视图

使用类视图django 推荐做法,熟悉了类视图使用方法后,能够减少视图函数重复代码,节省开发时间。接下来就让我们把博客应用视图函数改成基于类通用视图。...将 index 视图函数改写为类视图 针对这种从数据库获取某个模型列表数据(比如这里 Post 列表)视图Django 专门提供了一个 ListView 类视图。...在 Django URL 模式配置方式就是通过 url 函数将 URL 和视图函数绑定。...对于这种类型需求,django 提供了一个 DetailView 类视图。...最终传递给浏览器 HTTP 响应就是 get 方法返回 HttpResponse 对象。 还是无法理解么?在不涉及源码情况下我也只能讲这么多了。

1.3K20

Django装饰器使用 (类视图)

为了理解方便,我们先来定义一个为函数视图准备装饰器(在设计装饰器时基本都以函数视图作为考虑被装饰对象),及一个要被装饰视图。...单看视图时候无法知道此视图还被添加了装饰器,不利于代码完整性,不建议使用。...此种方式会为类视图所有请求方法都加上装饰器行为(因为是在视图入口处,分发请求方式前)。...4.2 在类视图中装饰 在类视图中使用为函数视图准备装饰器时,不能直接添加装饰器,需要使用method_decorator将其转换为适用于类视图方法装饰器。...method_decorator作用是为函数视图装饰器补充第一个self参数,以适配类视图方法。

1.1K10

Django2.0文(与其他应用交互)

1、python manage.py inspectdb 根据DB生成model 默认已经存在DB如下: CREATE TABLE alarm_group ( group_name varchar...: 将Django其他先由认证系统用户名和密码或者认证方法进行整合。...如果用户在LADP和基于Django应用上拥有独立帐号,那么这是无论对于网络管理员还是用户自己来说都是一件很令人头疼事情。...为了解决这样问题,Django认证系统能让你以插件方式与其他认证资源进行交互,可以覆盖Django默认基于数据库模式,还可以使用默认系统与其他系统进行交互。...指定认证后台 在后台,Django维护了一个用于检查认证后台列表。当某个人调用django.contrib.auth.authenticate()时,Django会尝试对其认证后台进行遍历认证。

62720

Django 视图函数打印内容不显示

引言   今天发现一个很诡异问题,在django项目视图函数,使用print,结果打印不出来。由于项目写了很久,查了很久,最终还是找到根本原因了。...有时候BUG就是在那个毫不起眼角落里藏着!   问题 从上图看视图函数请求是成功,并没有什么毛病,但是百思不得其解,为啥会这样?...然后加一下日志再看看:  日志可以正常显示,但是打印始终无法显示。   踩过坑   而我换个项目,我其他项目,尝试打印,是正常。...唯独这个项目不行,但是项目运行是正常,前端操作后端返回数据也正常。就在这一切看似正常情况下,这个打印始终不显示,不仅仅是这个视图函数,我里面所有视图函数加了个打印功能都不显示。...后面在一位大神指点下,尝试了新建项目,重新弄一次,还是不行。最后只有一步一步注释去找原因。结果最终还是找到原因。   解决   根本原因是我封装了某模块,模块里面写了两行代码引起

1.4K30

Django serializer优化类视图实现示例

一. create优化 在serializer序列化,我们通过创建序列化器对象方式地简化了视图函数代码,前端传入数据通过反序列化操作进行了各种数据校验,代码如下: from django.http...()方法,save()方法会自动调用序列化器类对象定义create方法 def post(self, request): """ post请求,新增数据 :param request...,可以进行合并,合并方式跟create方法有点差别,这里是给序列化器对象同时传入data和instance,然后调用save()方法,它会自动去调用序列化器类update方法 优化后put方法...友情提示:在调用序列化器类对象save()方法时,可以以关键字方式传参,它会自动添加到create方法validated_data,应用场景:判断当前项目是哪个用户创建 到此这篇关于Django...serializer优化类视图实现示例文章就介绍这了,更多相关Django serializer优化类视图内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn

38830

Django REST Framework-常用视图

Django REST Framework是基于Django一个用于构建Web API框架。它提供了许多用于构建Web API工具和实用程序,其中最常用是类视图。...类视图是一种Django REST FrameworkAPI视图,它是基于类视图。它提供了一种方便方式来编写可重用Web API视图,并带有许多有用内置功能。...APIViewAPIView是Django REST Framework中最基本视图之一。它提供了一个通用方式来处理HTTP请求,并返回一个HTTP响应。...总结在Django REST Framework,类视图是一种方便方式来编写Web API视图,并带有许多有用内置功能。...本文介绍了Django REST Framework中最常用视图,包括APIView,GenericAPIView,ModelViewSet,ReadOnlyModelViewSet和ViewSet

66030

DjangoQuerySet

一、QuerySet   查询集,类似一个列表,包含了满足查询条件所有项。QuerySet 可以被构造,过滤,切片,做为参数传递,这些行为都不会对数据库进行操作。只有你查询时候才真正操作数据库。...意味着QuerySet是惰性执行----即创建查询集不会带来任何数据库访问,直到查询集需要求值时候,Django才会真正运行这个查询。...,运行后得到并不是一系列model实例化对象,而是一个可迭代字典序列 values_list(*field): 它与values()非常相似,它返回是一个元组序列,values返回是一个字典序列... distinct(): 从返回结果剔除重复纪录(如果你查询跨越多个表,可能在计算QuerySet时得到重复结果。... count(): 返回数据库匹配查询(QuerySet)对象数量。

1.4K32

Django REST Framework-视图装饰器(一)

Django REST Framework视图装饰器提供了一种方便方式来自定义视图行为。视图装饰器是一个函数,它接受一个视图函数作为参数,并返回修改后视图函数。...在本文中,我们将介绍Django REST Framework中最常用视图装饰器,包括@api_view,@permission_classes,@authentication_classes和@throttle_classes...@api_view@api_view是Django REST Framework中最常用视图装饰器之一。它将普通函数视图转换为可以处理各种HTTP方法API视图。...return Response(data)在这个示例,我们使用@api_view装饰器将my_view函数转换为API视图。我们还指定了API视图支持HTTP方法(GET)。...@permission_classes@permission_classes是Django REST Framework另一个常用视图装饰器。它允许您指定在请求被处理之前必须满足权限要求。

43710
领券