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

Django搭建blog网站(二)

),但是这里我们只实现最新文章、归档分类数据显示,还有一个标签云没有实现。...月 {% endfor %} 这里 {% url %} 这个模板标签作用是解析视图函数 blog:archives 对应 URL 模式,并把 URL 模式月替换成 ...虽然现在 blog:archives 视图函数对应 URL 模式是这种形式,但是如果哪天这个模式改变了呢?...如果接收一个模型实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回 URL 值进行重定向。...12.4.绑定url 视图函数需要和 URL 绑定,这里我们在 comment 应用中再建一个 urls.py 文件,写上 URL 模式: comments/urls.py from django.conf.urls

4.5K100

基于类通用视图:ListView DetailView

将 index 视图函数改写为类视图 针对这种从数据库中获取某个模型列表数据(比如这里 Post 列表)视图Django 专门提供了一个 ListView 类视图。...然后就是通过一些属性来指定这个视图函数需要做事情。这里我们指定了三个属性。 model。将 model 指定为 Post,告诉 Django 我要获取模型Post。...在 DjangoURL 模式配置方式就是通过 url 函数将 URL 视图函数绑定。...具体实现我们以后会专门开辟一个专栏分析类视图源代码,到时候就能看出 Django 使用魔法了)。...首先是需要根据从 URL 中捕获分类 id(也就是 pk)获取分类,这 category 视图函数中过程是一样

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

Django搭建blog网站(一)

3 个之前写好模型类,然后实例化了一个 Category 类一个 Tag 类,为他们属性 name 赋了值。...绑定url视图函数  首先 Django 需要知道当用户访问不同网址时,应该如何处理这些不同网址(即所说路由)。...相关配置准备工作都在之前完成了,这里我们只需专心编写视图函数,让它实现我们想要功能即可。...同样我们需要对 Django 做一些必要配置,才能让 Django 知道如何在开发服务器中引入这些 CSS JavaScript 文件,这样才能让博客页面的 CSS 样式生效。...现在让我们来开发博客详情页面,有了前面的基础,开发流程都是一样了:首先配置 URL,即把相关 URL 视图函数绑定在一起,然后实现视图函数,编写模板并让视图函数渲染模板。

5.6K91

标签云

我们博客文章(Post模型除了通过 ForeignKey 关联了 Category(分类)外,还通过 ManyToMany 关联了 Tag(标签)。...现在我们来给博客实现这个效果,让 Django 从数据库中获取全部标签数据列表,然后在模板中显示它们,并且点击相应标签,就可以显示该标签下全部文章列表。...首先是定义视图函数,然后编写模板文件,最后将视图函数 URL 模式绑定。标签分类是完全一样步骤,因此稍微修改一下分类相关代码就可以用于标签了。...绑定 URL 同样URL 模式分类也是完全类似的,这里不再多做解释: blog/urls.py app_name = 'blog' urlpatterns = [ # 其它 URL 模式...所以 Django 没有让 post.tags 返回全部标签,而是返回了一个模型管理器(类似于 objects),然后我们可以调用这个模型管理器 all 方法,来获取这篇 post全部标签列表了

1.4K80

第 13 篇:分类、归档标签页

': post_list}) 这里使用了模型管理器(objects) filter 方法来过滤文章。...URL detail 视图函数对应 URL 是类似的,这在之前我们讲过,django 会从用户访问 URL 中自动提取 URL 路径参数转换器 规则捕获值,然后传递给其对应视图函数...这里 {% url %} 这个模板标签作用是解析视图函数 blog:archive 对应 URL 模式,并把 URL 模式月替换成 date.year,date.month 值。...虽然现在 blog:archive 视图函数对应 URL 模式是这种形式,但是如果哪天这个模式改变了呢?...然后我们通过模型管理器 filter 方法过滤出了该分类下全部文章。同样也首页视图中一样对返回文章列表进行了排序。

78730

django 入门:通用视图类重构视图

作者:Kuky_xs 博客:https://www.jianshu.com/p/8cdf099e974f 1 正文 《django入门:环境及项目搭建》 《django入门:数据模型》 《django入门...:视图及模版》 《django入门:Admin管理系统及表单》 终于到最后一部分了,这部分我们将通过 django 自带通用视图类替换之前写视图函数,对视图进行重构 2 利用 django 通用视图类创建类视图..., DetailView from django.shortcuts import get_object_or_404 from blog.models import Post # 获取相应模型全部数据...= 'post_list' # 该方法默认返回指定模型全部数据,通过复写该方法,改变默认行为 def get_queryset(self): # 类视图中,...优化分页列表 最后我们列下 Paginator 常用属性结束 django 入门教程,接下来会有 DRF 入门教程,django 算是其基础吧,DRF 实现了前后端分离,刚好适合我这种 Android

86420

评论

设计评论数据库模型 用户评论数据必须被存储到数据库里,以便其他用户访问时 Django 能从数据库取回这些数据然后展示给访问用户,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样...我们知道每一个 URL 对应着一个 Django 视图函数,于是 Django 调用这个视图函数,我们在视图函数中写上处理用户通过表单提交上来数据代码,比如验证数据合法性并且保存数据到数据库中,...如果接收一个模型实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回 URL 值进行重定向。...绑定 URL 视图函数需要和 URL 绑定,这里我们在 comment 应用中再建一个 urls.py 文件,写上 URL 模式: comments/urls.py from django.conf.urls...P[0-9]+)/$', views.post_comment, name='post_comment'), ] 别忘了给这个评论 URL 模式规定命名空间,即 app_name =

3.1K60

第 7 篇:文章详情 API 接口

对应规则说明见 使用视图集简化代码),将其在路由器中注册后,django-restframework 自动会自动为我们生成对应 API 接口。...() permission_classes = [AllowAny] 现在,路由会自动增加一个 /posts/:pk/ URL 模式,其中 pk 为文章 id。...lookup_field 字段值将从请求 URL 中捕获,所以你看到文章接口 url 模式为 /posts/:pk/,假设将 lookup_field 指定为 title,则 url 模式为 /posts...显然,我们需要给文章详情写一个新序列化器了: from .models import Category, Post, Tag class TagSerializer(serializers.ModelSerializer...那么如何在视图集中区分不同 action 动作呢?视图集有一个 action 属性,专门用来记录当前请求对应动作。

99230

Django Haystack 全文检索与关键词高亮

在此之前我们使用了 Django 内置一些方法实现了一个简单搜索功能。但这个搜索功能实在过于简单,没有多大实用性。...要相对某个 app 下数据进行全文检索,就要在该 app 下创建一个 search_indexes.py 文件,然后创建一个 XXIndex 类(XX 为含有被检索数据模型这里 Post),并且继承...配置 URL 接下来就是配置 URL,搜索视图函数 URL 模式 django haystack 都已经帮我们写好了,只需要项目的 urls.py 中包含它: blogproject/urls.py...# url(r'^search/$', views.search, name='search'), 修改搜索表单 修改一下搜索表单,让它提交数据到 django haystack 搜索视图对应 URL...另外要取得 Post(文章)以显示文章数据标题、正文,需要从 result object 属性中获取。query 变量值即为用户搜索关键词。

2.1K80

django框架】共4大模块50页md学习文档 第3篇:django路由网络请求使用详解

当你考虑开发现代化、高效且可扩展网站Web应用时,Django是一个强大选择。...URL配置 一、需求 需求: 在浏览器访问URL地址 ht://127.0.0.1:8000/users/index 时,显示 hello django 信息 实现 需要编写一个视图函数 针对该视图函数配置访问路由...二、URL配置实现 对于url访问地址 ht://127.0.0.1:8000/users/index?...# 配置url视图函数,需要调用url函数,并传入参数 # 参数1: 匹配url正则表达式(需要用 ^ $ 匹配开头结尾) # 参数2: url匹配成功执行视图函数...匹配 根据url配置先后顺序, 从 上到下进行URL匹配 在 项目下匹配成功URL部分会去掉,剩下部分继续到应用下作匹配 如果匹配成功,Django会调用对应视图函数,返回响应内容给浏览器显示

14220

django之评论系统及多级评论

设计评论数据库模型 用户评论数据必须被存储到数据库里,以便其他用户访问时 Django 能从数据库取回这些数据然后展示给访问用户,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样...我们知道每一个 URL 对应着一个 Django 视图函数,于是 Django 调用这个视图函数,我们在视图函数中写上处理用户通过表单提交上来数据代码,比如验证数据合法性并且保存数据到数据库中,...如果接收一个模型实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回 URL 值进行重定向。...Comment Post 是通过 ForeignKey 关联,回顾一下我们当初获取某个分类 cate 下全部文章时代码:Post.objects.filter(category=cate)。...绑定 URL 视图函数需要和 URL 绑定,这里我们在 comment 应用中再建一个 urls.py 文件,写上 URL 模式: comments/urls.py from django.conf.urls

6.8K61

第 14 篇:交流桥梁“评论功能”—— HelloDjango 系列教程

,因此我们需要为评论设计数据库模型,这设计文章、分类、标签数据库模型是一样,如果你忘了怎么做,再回顾一下 创建 Django 博客数据库模型[2] 中做法。...action 指定表单内容提交地址,这里我们提交给 comments:comment 视图函数对应 URL(后面会创建这个视图函数并绑定对应 URL),模板标签 url 用法在 分类、归档标签页...如果接收一个模型实例,那么这个实例必须实现了 get_absolute_url 方法,这样 redirect 会根据 get_absolute_url 方法返回 URL 值进行重定向。...评论发布成功失败消息效果如下图: 显示评论内容 为了不改动已有的视图函数代码,评论数据我们也使用自定义模板标签来实现。...Comment Post 是通过 ForeignKey 关联,回顾一下我们当初获取某个分类 cate 下全部文章时代码:Post.objects.filter(category=cate)。

1.6K20

真正 Django 博客首页视图

在此之前我们已经编写了 Blog 首页视图,并且配置了 URL 模板,让 Django 能够正确地处理 HTTP 请求并返回合适 HTTP 响应。...首页视图函数 上一节我们阐明了 Django 开发流程。即首先配置 URL,把 URL 相应视图函数绑定,一般写在 urls.py 文件里,然后在工程 urls.py 文件引入。...相关配置准备工作都在之前完成了,这里我们只需专心编写视图函数,让它实现我们想要功能即可。...同样我们需要对 Django 做一些必要配置,才能让 Django 知道如何在开发服务器中引入这些 CSS JavaScript 文件,这样才能让博客页面的 CSS 样式生效。...,因此先留着,我们在之后实现了这些功能后再来修改它,目前只替换分类、文章发布时间、文章作者: <span class="<em>post</em>-<em>category</em>"

3.5K80

何在 Django 中使用 MVT 创建一个基本项目?

了解如何在 Django 中使用 MVT 创建基本项目是开发健壮且可扩展 Web 应用程序基本步骤。 在本文中,我们将深入研究在 Django 中使用 MVT 创建基本项目的过程。...我们将引导您完成基本步骤,从设置项目到定义模型视图、模板 URL 模式。通过学习本教程,您将获得 Django MVT 模式坚实基础,并能够在此基础上构建以创建更复杂应用程序。...步骤 6:实现视图 视图处理处理请求和返回响应背后逻辑。打开“myapp”目录中“views.py”文件并定义视图函数。...步骤 8:定义 URL 模式 URL 模式确定应为给定 URL 调用哪个视图函数。...按照提供步骤,您可以初始化 Django 项目、定义模型实现视图、创建模板设置 URL 模式Django MVT 架构促进了模块化有组织开发,确保了可扩展性可维护性。

23520

编写 Django 应用单元测试

测试模型 模型需要测试不多,因为基本上都是使用了 django 基类 models.Model 特性,自己逻辑很少。...拿最为复杂 Post 模型举例,它包括逻辑功能主要有: __str__ 方法返回 title 用于模型实例字符表示 save 方法中设置文章创建时间(created_time)摘要(exerpt...测试视图 视图函数测试基本思路是,向某个视图对应 URL 发起请求,视图函数被调用并返回预期响应,包括正确 HTTP 响应码 HTML 内容。...') 获取 admin 管理添加博客文章 URLdjango admin 添加文章视图函数名为 admin:blog_post_add,一般 admin 后台操作模型视图函数命名规则是 <app_label...self.client.post(self.url, data=data) ,向添加文章 url 发起 post 请求,post 数据为需要发布文章内容,只指定了 title,body分类。

72830

django入门:Admin管理系统及表单(干货)

视图及模版》 django 强大之处还有自带后台管理系统,真心给力!!...这一部分将介绍 django 自带后台管理系统,以及如何通过表单提交数据 django admin 后台管理系统 在后台管理系统注册创建模型 from django.contrib import admin...from blog.models import Post, Category, Tag # 在应用目录下 admin.py 文件中,对创建模型进行注册,可以一起用列表注册,也可以分开注册 admin.site.register...admin 管理界面 为了可以用户进行交流,我们需要获取用户一些评论之类,所以我们需要通过表单让用户提交信息,接下来我们将了解下 django 表单 django 表单 存在相应模型POST...# 表单对应数据库模型 model = Post # 指定表单需要显示字段 fields = ['title', 'body'] 2.创建表单视图 from

2.8K20

Django+Vue开发生鲜电商平台之5.使用DRF实现商品列表页过滤

但是从代码中可以看到: 通过在新建列表、其元素为单个商品信息组成字典,一个一个地添加,显得很麻烦,可进行改进; 有些字段不能直接用json.dumps()方法序列化,datetime,会报错,商品列表视图修改为如下时...Django中有Form,也有ModelForm,DRF中也有ModelSerializer,相比于Serializer,它省去了模型所有字段添加处理数据方法实现,serializers.py简化如下...此时已经显示出category具体信息。 3.GenericView方式实现商品列表页分页 现在进一步使用mixinsGenericView让代码更加简洁。...4.viewsetsrouter实现商品列表页 viewsets中含有很多常见视图,可以让代码变得更加简洁高效。...方法、post()请求转到create()方法,还执行一些其他默认操作,以后添加其他模型视图也直接添加一行代码router.register(r'xxx', XxxListViewSet)即可。

5.3K20
领券