美文网首页
Django 反查通用关系注意点

Django 反查通用关系注意点

作者: mutang | 来源:发表于2022-10-14 15:35 被阅读0次

官网例子:https://docs.djangoproject.com/zh-hans/4.1/ref/contrib/contenttypes/#django.contrib.contenttypes.fields.GenericRelation
定义 GenericRelation,并设置 related_query_name 允许从相关对象查询:

tags = GenericRelation(TaggedItem, related_query_name='bookmark')

这样就可以从 TaggedItemBookmark 进行过滤、排序和其他查询操作:

例:获取所有属于url中包含' django '的书签的标签

TaggedItem.objects.filter(bookmark__url__contains='django')

<QuerySet [<TaggedItem: django>, <TaggedItem: python>]>

多处使用了related_query_name的注意事项

切记:使用不同related_query_name,否则,查询不到

例:

# 1
review = GenericRelation(Review, related_query_name='article_review_query')
# 2
review = GenericRelation(Review,  related_query_name='comment_review_query')
# 3
review = GenericRelation(Review,related_query_name='reply_review_query')

查询:
Review.objects.filter(article_review_query='TNuig82Tpz') # 主键可省略
Review.objects.filter(article_review_query__title__contains='test')

相关文章

  • Django 框架之 通用视图

    知识点 通用视图概念和基本用法 基于类的视图的分类、写法和使用 简介 通用试图概念 通用视图是Django为解决建...

  • B站从弹幕反查用户小记

    工具:Chrome浏览器 反查用户分为视频里现存的弹幕反查和历史弹幕反查。其中反查历史弹幕需要用Chrome的调试...

  • Django python注意点

    一、基本语法 很多Diango的配置都是用tuple实现的-admin选项,URLconf规则,以及很多在sett...

  • Django处理PUT/DELETE请求

    Django处理PUT请求有几个点需要注意: CSRF配置 为了防止跨站攻击,Django默认会对POST/PUT...

  • 2019-03-23 python 管理网站

    # Django 18.2.3 Django管理网站 * 管理网站(admin site),管理员使用,普通用户不...

  • django html模板注意点

    django会自动寻找templates文件夹中的一个模板。但是项目你在打所有ap的html,这样很可能会导致文件...

  • Django Rest Framework中的反查询

    一般情况下用serializers.HyperlinkedModelSerializer和serializers....

  • Django - 通用视图

    参考:http://www.yiibai.com/django/django_generic_views.html...

  • SAP PP 批量反查BOM

    业务背景介绍 SAP提供BOM反查标准代码为CS15,该CS15可实现物料单层反查BOM和多层反查BOM,以及相应...

  • 实体关系抽取

    实体属性关系抽取 针对语料:通用语料 抽取关系:通用实体关系 抽取级别:句子级别 关系类型(通用文本) 关系类型(...

网友评论

      本文标题:Django 反查通用关系注意点

      本文链接:https://www.haomeiwen.com/subject/gvahzrtx.html