查询个人站点的文章、分类和标签查询

urls.py

re_path(‘^(?P<username>\w+)$‘, views.home_site, name=‘home_site‘),

home_site.py

def home_site(request, username):
    """
    个人站点视图函数
    :param request:
    :return:
    """

    user = UserInfo.objects.filter(username=username).first()

    # 判断用户是否存在
    if not user:
        return render(request, ‘not_found.html‘)

    # 查询当前站点
    blog = user.blog

    # 获取当前用户或者当前站点对应的所有文章
    # 基于对象查询
    # aritlce_list = user.article_set.all()

    # 基于双下划线查询
    article_list = models.Article.objects.filter(user=user)

    # 查询当前站点的每一个分类名称以及对应的文章数
    category_list = models.Category.objects.filter(blog=blog).values(‘pk‘).annotate(
        count=Count(‘article__title‘)).values(
        ‘title‘, ‘count‘)

    # 查询当前站点的每一个标签名称以及对应的文章数
    tag_list = models.Tag.objects.filter(blog=blog).values(‘pk‘).annotate(count=Count(‘article‘)).values_list(
        ‘title‘, ‘count‘
    )

    # 查询当前站点的每一个年月名称以及对应的文章数

    date_list = models.Article.objects.filter(user=user).annotate(month=TruncMonth(‘created_time‘)).values(
        ‘month‘).annotate(
        count=Count(‘nid‘)).values_list(
        ‘month‘, ‘count‘)
    # 其他复杂的没有这种方法的还是要用extras这个接口自己写

    return render(request, ‘home_site.html‘)

原文地址:https://www.cnblogs.com/lshedward/p/10390199.html

时间: 2024-10-16 13:05:45

查询个人站点的文章、分类和标签查询的相关文章

新闻资讯类系统 ---- 文章分类和标签的设计

零. 简介 博客. CMS(网易新闻. 腾讯新闻) 之类的系统, 核心就是文章, 一切的一切都围绕着文章进行, 所以设计一个好的文章分类和标签的数据库关系模型, 对后续编码及维护将会起到至关重要的作用. 一. 分类 一篇文章, 比如 <大陆 ** 明星又离婚了> 这属于 「娱乐」 类新闻, 又属于 「中国」 分类下的新闻, 所以文章和分类的关系一般是 1 对 N . 数据库表结构设计 article : 字段名 注释 id title 文章标题 author 作者 create_time 创建

文章分类和标签的数据库设计

几乎在所有web项目中,都涉及文章分类和标签的设计,应该说这是一个比较常见.典型的案例.站长并不保证我的思路就是最好的,只是分享出来大家一起交流一下,互相促进与提高. 我们假设的开发项目是一个博客系统,最核心的部分就是与文章相关的,那么我们今天讨论如何设计博客系统的文章分类和标签. 1.首先,分类和标签都是要和具体的文章相关联的,当然也可能一些文章既没有分类也没有标签,这一点是大家在写查询的时候容易疏忽的地方.因为我们的第一感觉就是,在查询文章列表的时候关联分类表,查出所有的文章和分类,对应关系

统计各个分类和标签下的文章数

作者:HelloGitHub-追梦人物 文中所涉及的示例代码,已同步更新到 HelloGitHub-Team 仓库 在我们的博客侧边栏有分类列表和标签列表,显示博客已有的全部文章分类.现在想在分类名和标签名后显示该分类或者标签下有多少篇文章,该怎么做呢?最优雅的方式就是使用 django 的 annotate 方法. Model 回顾 回顾一下我们的 model 代码,django 博客有一个 Post 和 Category 模型,分别表示文章和分类: blog/models.py class

WordPress页面,文章,分类等的条件判断的标签集合

is_home()判断是否为首页. The Front Page 首页头版消息设置is_front_page()判断是否为首页头版消息. (无论是日志或是页面).当系统显示博客主页且管理面板的设置>阅读菜单下 “主页显示为”选项设 为最近发表的文章”,或者’设置>阅读菜单下”主页显示为”选项设为且”主页”是当前被显示的页面时,is_front_page() 标签返回 TRUE. The Administration Panels 管理控制面板is_admin()判断是否为后台管理控制面板. A

&amp;lt;Machine Learning in Action &amp;gt;之二 朴素贝叶斯 C#实现文章分类

def trainNB0(trainMatrix,trainCategory): numTrainDocs = len(trainMatrix) numWords = len(trainMatrix[0]) pAbusive = sum(trainCategory)/float(numTrainDocs) p0Num = ones(numWords); p1Num = ones(numWords) #change to ones() p0Denom = 2.0; p1Denom = 2.0 #c

Hexo next 主题配置右侧栏的分类和标签打开的是空白

基本搭建好后发现,分类或标签点进去网页不存在,但是具体的一个分类能够进去. 原来是没有设置好,解决起来也很简单. 一. 新建 标签 和分类 页面 在根目录输入命令 hexo new page categories 会自动新建 categorier 文件夹并生成一个index.md文件,将里面的代码改为: --- title: categories date: 2020-01-21 12:12:26 type: "categories" --- 同理,「标签」也一样 hexo new p

在云服务器搭建WordPress博客(四)创建和管理文章分类

不同主题的文章划分到不同的分类,有助于访客寻找他们想要的内容,提高用户体验.所以,为你的网站创建文章分类是很有必要的.那么,WordPress系统如何创建和管理文章分类呢?今天倡萌就简单介绍一下. 创建分类之前,最好对你网站的内容取向有个比较清楚的了解,然后列出可取的分类名称(一般为2-6个字为宜). 进入 后台 – 文章 – 分类目录,就可以看到分类创建和分类管理界面: 添加新分类目录 分类目录的添加默认有4个选项: 名称 – 分类的名称,一般为 2-6 个字为宜,如上图的“WordPress

1、文章分类表的创建以及分类列表页模板导入

(1)建立文章分类表 由于之前开启apache的虚拟主机,apache的配置进行了更改,之前phpadmin不能访问,需配置httpd-vhost.conf <VirtualHost *:81> ##ServerAdmin [email protected] DocumentRoot "D:/soft/htdocs/" ##ErrorLog "logs/dummy-host2.example.com-error.log" ##CustomLog &quo

用struts2标签如何从数据库获取数据并在查询页面显示。最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量。

最近做一个小项目,需要用到struts2标签从数据库查询数据,并且用迭代器iterator标签在查询页面显示,可是一开始,怎么也获取不到数据,想了许久,最后发现,是自己少定义了一个变量,也就是var变量.<s:iterator>标签有一个value属性,用来存放在Action类的方法中存数据的list集合,还有一个id,好像是说指定集合的索引的意思,就是给list集合遍历出来的每个对象加上一个数字标签,反正我是这么理解的,没用过.还有一个很重要,就是var变量,我在s:iterator按ctr