当前位置: 首页 > news >正文

yii2 网站开发软文模板app

yii2 网站开发,软文模板app,ks2e做网站,十款看免费行情的软件当博客文章实现了标签后,可以用它们做很多有趣的事情。关于标签的更多内容,请看 Django集成第三方标签功能-CSDN博客 使用标签,我们可以很好地对博客文章进行分类。类似主题的帖子会有几个共同的标签。下一步将构建一个功能,以显…

当博客文章实现了标签后,可以用它们做很多有趣的事情。关于标签的更多内容,请看

Django集成第三方标签功能-CSDN博客

使用标签,我们可以很好地对博客文章进行分类。类似主题的帖子会有几个共同的标签。下一步将构建一个功能,以显示类似的帖子的标签数量。当用户阅读一篇文章时,我们可以建议他们阅读其他标签相同的文章。

为了检索特定职位的类似职位,需要执行以下步骤:、

检索当前文章的所有标签

blog/views.py

from django.db.models import Count


📌这是Django ORM的Count聚合函数。这个函数将允许执行标记的聚合计数。
Django.db.models包含以下聚合函数:

  • Avg:平均值  
  • Max:最大值  
  • Min:最小值  
  • Count:对象计数

关于聚合函数,可查看官方文档

https://docs.djangoproject.com/zh-hans/5.0/topics/db/aggregation/

在render()函数之前的post_detail视图中添加以下行:

post_tags_ids = post.tags.values_list('id', flat=True)

例如当前文章有两个标签 {id:1,value:'python'}{id:2,value:'django'},使用tags.values_list获取标签的id列表,返回一个元组(1,2)

📌将flat=True传递给它以获得像[1,2,3,…]这样的扁平列表。

获取所有贴有这些标签的帖子  
从列表中排除当前的帖子,以避免推荐相同的帖子 

similar_posts = Post.published.filter(tags__in=post_tags_ids).exclude(id=post.id)

关于Post.published是在模型中自定义的一个返回已发布信息的方法,更多内容请查看

Django定制模型管理器-CSDN博客

按与当前帖子共享的标签数量对结果排序  
如果有两个或更多的帖子具有相同数量的标签,推荐最近的帖子  
将查询限制为我们想要推荐的帖子数量

similar_posts = similar_posts.annotate(same_tags=Count('tags')).order_by('-same_tags','-publish')[:4]

将similar_posts对象添加到render()函数的上下文字典中

    template = "blog/post/detail.html"context = {"post":post,"comments":comments,"new_comment":new_comment,"comment_form":comment_form,"similar_posts":similar_posts}return render(request,template,context)

关于comment功能,请查看Django评论系统-CSDN博客

编辑blog/post/detail.html模板,并在帖子评论列表之前添加以下代码

    {% for post in similar_posts %}<p><a href="{{ post.get_absolute_url }}">{{ post.title }}</a></p>{% empty %}There are no similar posts yeet.{% endfor %}

关于get_absolute_url是在模型中自定义的使用日期为路径的方法,更多内容请看

Django用日期URL定位详情-CSDN博客

http://www.r43.cn/news/128950.html

相关文章:

  • 下载手机app安装百度关键词seo优化
  • 翻墙在线代理南宁seo手段
  • 免费企业网站源码大全网络营销推广方案3篇
  • 做网站用什么电脑大型网站seo课程
  • 控制台网站关键词上首页的有效方法
  • 网站推广需求做营销策划的公司
  • 深圳购物网站建设价格seo实战培训
  • 做炒作的网站深圳网络营销推广渠道
  • gif表情包在线制作网站广告接单网站
  • 做网站需要购买网站空间吗电商运营怎么自学
  • 揭阳企业建站系统百度免费推广有哪些方式
  • 专业的常州做网站专门做排行榜的软件
  • 苏州沧浪区做网站网站开通
  • 网站群发推广软件seo竞价培训
  • 做网站的商家怎么赚取流量费百度营销官网
  • 加速器推荐南京谷歌seo
  • 政务公开网站建设管理内容营销
  • 怎么做网页 网站制作怎么建立企业网站免费的
  • 商城网站seo100个商业经典案例
  • 酒店网站建设方案ppt一级域名好还是二级域名好
  • 网站启动画面重庆网站制作系统
  • 网站表单怎么做seo 百度网盘
  • 墨刀可以做网站原型图吗b站推广网站2022
  • 龙华三网合一网站建设怎样弄一个自己的平台
  • 公司做网站怎么赚钱吗刚刚突发1惊天大事
  • 做网站图片要求高吗自己有产品怎么网络销售
  • 企业建设H5响应式网站的5大好处6百度指数网站
  • 做网站设计需要具备哪些推广一次多少钱
  • seo网站优化技术宁波做seo推广企业
  • 网站收录平台方法seo软件排行榜前十名