DjangoDjango·

Django use __icontains with __in for field lookup

Publié à 2024-06-28 00:39:14Vu 191 fois
Article professionnel
Réimpression Veuillez indiquer la source

In Django, __icontains and __in are field lookups to the QuerySet methods. __icontains is a case-insensitive containment test, and __in means that the field is in a given iterable. So I would like to do the following lookup:

keywords = ['How', 'to', 'setup', 'PrismJS', 'and', 'Autoloader', 'plugin', 'with', 'Nuxt', '3?']
#Possible keywords of title
Writings.objects.filter(title__icontains__in=arr)

Unfortunately, we can not combine field lookups in Django.

To implement our desire, we can use Q() objects (see Complex lookups with Q objects), and combine them with | operator by looping.

from django.db.models import Q

def title_matching(merchants):
    """
    Return a queryset for writings whose titles contain case-insensitive
    matches for any of the `keywords`.
    """
    q = Q()
    for key in keywords:
        q |= Q(title__icontains = key)
    return Writings.objects.filter(q)

Similarly, we can use the same way to combine __iexact with __in.

Section des commentaires

Pas encore de commentaire, ajoutez le premier.

弦圈热门内容

如果万物皆有意识,那么意识从何而来?石头拥有意识吗?

在人们的普遍认知中,意识是最特殊的存在,是我们认识和改造世界的基础条件。而物质是意识的载体,二者存在哲学意义上相互作用的关系。作为已知唯一的智慧生命体,人类自认为我们的意识是最复杂的。因为目前人类已经能够展开一系列的探索活动,而其他生物甚至都没有表现出意识活动的迹象,这也成为科学家们探索的重点。并非只有高级动物才拥有意识活动究竟意识是怎样的存在呢?我们能够与一些小动物进行情感交流,是不是意味着它们的意识活动与人类存在相似之处……在一部分科学家们的探索过程中,他们惊奇地发现,其实不仅只有高级动物拥有意识活动,植物同样可以进行交流,甚至一块石头都有可能拥有复杂的意识,只是我们的探索方式一直存在问题。从表面上看,一块石头可能存在了亿万年,除了地质环境的变化和人为因素影响它们的状态之外,它们几乎不会出现任何变化。而人们认为意识存在于大脑中,所以石头这样的非生命物质不可能存在意识活动。巴特斯克效应实验证明植物有情感巴特斯克效应实验利用特殊的仪器证明,植物拥有情感,在面对人类和动物的威胁时,它们也能够释放出防御以及害怕等信号给周围的同类。而人们无论如何也不会想到,主张进行该实验的科学家最初只是利用 ...

cover

斯诺登揭秘:地下世界真相,地心人真的存在吗?

以目前而言的科技水平是到不了地下的,眼见为实,耳听为虚。到底存不存在地底人只能等到真正进入地下的那天才能证明!不是说居住,而是一个通道的问题,地球人把地球分为东南西北,那么在地球中层肯定有四通八达的通道,不信你保留我的观点,到若干年后看。恒定的地球肯定有恒定的能量,地球下层,中层也需要进化。我们人类就是这样进化到上层约。我们需要的是到宇宙,管宇宙。地球空心论科学家们又不是没提出过,只不过大部分科学家更赞同实心论,还有实践是检验真理的唯一标准,人类对地球的探索远远太浅,苏联才挖了一万多米。后来还传说是因为地下总是穿出怪声还有一系列诡异事件才停止的,不论这个事是真是假,人类对地球的探索远远太少。科学也只是一个提出严谨假设然后再进行论证的过程,没被证实的也仅仅是科学家提出的假设跟观点。地心人应该是地球上第二代的人类,第一代就是巨人族,当时地球上的金字塔就是他们建造的,要知道当时地球上的生物都是异常的巨大,恐龙很有可能就是他们运输那些超大石块的工具。突然某一天,从天而降的灾难将这个文明毁灭,第二代的人类就是现在生活在地心里的人,他们个头矮小,但是极度聪明,地表由于不确定因素太多,他们就将家园搬 ...

宇宙大爆炸瞬间究竟发生了什么?深入解读宇宙漫长演化史!

当我们举头仰望浩瀚的星空,眼前所展示的是一个宁静而广阔的宇宙。然而,在这一片宁静的面纱之下,隐藏着一个充满生机与神秘色彩的历史。大约138亿年前,我们所知道的这个宇宙的全部,居然只是一个比原子还要微小的存在。就在那个难以想象的一刻,发生了一场伟大的爆炸——即我们所知的宇宙大爆炸,它不仅拉开了宇宙历史的序幕,也彻底改变了我们对空间和时间的理解。宇宙大爆炸,亦称为“大爆炸”,是宇宙学中至关重要的事件之一。在这一刻,整个宇宙从一个极其微小的点开始,经历了一场剧烈且迅速的膨胀,进而塑造成今天我们所观察到的宇宙模样。这一理论首次由比利时神父兼宇宙学家乔治·勒梅特在20世纪20年代提出,随后经过不断的科学研究及观测,逐渐成为了现代宇宙学的支柱理论。但关于大爆炸的瞬间究竟发生了什么,这仍是让科学家着迷的一个未解之谜。奇点与大爆炸:宇宙的起源在大爆炸的理论框架下,宇宙的起源被描述为一个极其渺小的点,其中包含了宇宙中所有可能的未来物质和能量。这个概念对我们这些生活在三维空间及一维时间中的人类来说是极为难以理解的。不过,这个所谓的奇点并非普通的物质点,它实际上是一种密度和温度都达到无限状态的特殊存在。在这 ...

地球有没有被精心设计过?1万年前的壁画,可能给出了答案

1科学家们测算出地球的年龄是45.5亿岁,大约是38亿年前地球上出现了生命,人类最早是在距今300万年前出现在地球上。但是地球是怎么出现的,是自然生成,还是被神创造的呢?耶稣说:“当然是我创造的了。”盘古却说:“你那是创造的人类,明明是我一神斧劈开的。”地球真的是由神创造的吗?地球上的人类也是由神创造的吗?仰望浩瀚的星空,思想也随之神游于银河系中。无比广阔的宇宙中还有和我们一样的人吗?那一闪一闪的群星中,是否有生命存在?繁星点点的天空是否也正有一个和我一样的人,也在思索着,其它的生命在哪里?2英国天文学家,哈雷彗星的发现者艾德蒙·哈雷曾经说过:“太阳系并非自然形成,而是经过人为设计的。”这是真的吗?2014年7月15日,印度权威考古学家JR·巴格特在恰蒂斯加乐邦的一个洞穴中发现了一些保存良好的壁画,距今大约有1万年的历史了。令人惊喜的是这些壁画虽然历经岁月的洗礼,但色彩依然鲜艳。历史悠久的壁画,在世界上有许多,例如我国敦煌莫高窟的壁画,所以这些壁画的出现不是最稀奇的,年代久远也不是壁画的最奇怪之处。重点是壁画中所描绘的图画,匪夷所思,震惊了人类。壁画中大多描绘的是史前人类之间的一些日常 ...

cover

在寻找外星人的过程中,出现什么情况,是最让人类感到恐惧的?

在宇宙中,人类总是怀着无尽的好奇与探索欲望,试图揭开外星生命的神秘面纱。而在这个过程中,一个普遍的观点逐渐浮现:外星人的科技一定会比人类高很多,甚至有人认为,对于外星人来说,人类可能就像蚂蚁一样微不足道。那么,这种观念究竟从何而来?又是否站得住脚呢?人类对于外星生命的了解几乎为零。我们尚未发现确凿的外星生命存在证据,更无从知晓他们的科技水平。因此,关于外星人科技远超人类的观点,很大程度上是基于一种推测和想象。这种推测往往源于我们对宇宙尺度和复杂性的敬畏,以及对未知事物的恐惧和好奇。然而,即使在没有确凿证据的情况下,我们依然可以从一些侧面来探讨这个问题。一方面,宇宙的广阔与复杂超出了我们的想象。在如此庞大的宇宙中,存在着无数可能孕育生命的星球和星系。这些星球上的生命形式,可能经历了与地球生命完全不同的进化历程,从而发展出独特的科技体系。如果某些外星生命能够在极端环境下生存和繁衍,那么他们的科技水平很可能超越了我们。另一方面,我们也要看到,科技的发展并非一蹴而就的过程,而是需要长时间的积累和创新。即使外星生命存在,他们的科技水平也不一定就比我们高。毕竟,科技的发展受到多种因素的影响,包括生 ...

AI到底是解放生产还是替代生产?AI将如何影响人类的未来?

在这个飞速发展的时代,人工智能的崛起成为了无法忽视的现实。人们对于AI的态度也各不相同,有人担心它会取代人类的工作岗位,有人却认为它能够解放人类的生产力。到底AI是来解放我们,还是取代我们?人类未来的命运又将何去何从?AI发展的背后:机器智能与人类解放的关系人工智能的发展并不意味着人类将被取代,相反,它可以帮助人类解放双手,从繁重的体力劳动和重复性工作中解脱出来。通过自动化技术和智能化系统,人类可以更加高效地进行生产和工作,节约时间和精力,从而有更多的时间去追求更有意义的事物。机器智能的出现可以让人类把更多的精力放在创造性工作上,提高生产效率和生活质量。人工智能的发展为人类提供了更多的可能性。通过机器学习和大数据分析,人工智能可以帮助人类更好地理解世界,预测未来趋势,为人类的决策提供更科学的依据。在医疗、金融、交通等领域,人工智能的应用已经取得了显著成果,为社会发展带来了巨大的便利和益处。人类可以借助机器智能的力量解决更多的问题,实现更多的理想,推动社会向更美好的方向发展。人工智能的发展也需要人类的参与和监督。虽然机器智能具有高效和智能的优势,但它仍然无法完全取代人类的思维和创造力。人 ...

暗物质:奇异黑洞可能是暗物质的副产品

对于我们能看到的每一公斤物质,无论是你桌上的电脑,还是遥远的恒星和星系,都有5公斤不可见的物质渗透在我们的周围。这种“暗物质”是一种神秘的存在,它规避了所有形式的直接观测,然而却通过它对可见物体的无形牵引力让我们感受到它的存在。图片来源网络五十年前,物理学家斯蒂芬·霍金提出了一个关于暗物质可能是什么的想法:一个黑洞群体,它们可能在大爆炸后不久就形成了。这样的“原始”黑洞不会是我们今天探测到的巨人,而是微观区域的超密物质,它们会在大爆炸后的第一枚万亿分之一秒形成,然后崩溃并散布在宇宙中,以一种可以解释我们今天所知的暗物质的方式牵引周围的时空。现在,麻省理工学院的物理学家发现,这个原始过程也会产生一些意想不到的伴侣:更小的黑洞,它们拥有前所未有的称为“色荷”的核物理属性的数量。这些最小的,“超负荷”的黑洞将是一种全新的物质状态,它们可能在诞生后不久的一小部分秒内蒸发。然而,它们仍可能影响了一个关键的宇宙学转变:第一次原子核被锻造的时候。物理学家假设,带色荷的黑洞可能影响了融合核的平衡,在一种天文学家将来可能通过未来测量检测到的方式。这样的观测将有说服力地指向原始黑洞作为今天所有暗物质的根源 ...

cover

上帝根本不存在!霍金晚年到底发现了什么,临终遗作彻底否定神学

综述斯蒂芬·霍金,作为现代最为家喻户晓的物理学家之一,尽管身患重病,却凭借杰出的科学成就享誉全球。他的世界观独树一帜,尤其是在对宇宙本质的探索上,给世人带来了深刻的思考。早年间,霍金对上帝的存在问题持有保留态度,而到了晚年,他却坚定地否认了上帝的存在。在临终前的著作中他直言:宇宙的诞生无需借助上帝之手!霍金究竟发现了什么?为何会有这样的转变?思想转变早年间,霍金对于上帝是否存在其实并不是那么坚定。1988年出版的《时间简史》中,他虽然提到了物理学能够解释宇宙的运作规律,但并未完全排除上帝在宇宙创造中的作用。或许是为了尊重那些深信上帝创造宇宙的人,也可能是他对“创造力”的某种敬畏。他当时还在书中写道,如果我们能够发现一套完整的理论,就可以理解“上帝的思维”。这也表明,霍金早年在探索宇宙的奥秘时,依然对上帝保留了一神秘感。然而,随着霍金在科学研究上的深入,他逐渐开始动摇这个信念。2010年出版的《大设计》,霍金的立场发生了重大改变。他明确提出:上帝并不需要存在,宇宙可以通过自身的物理法则自发生成。他提出,“由于有万有引力这样的定律存在,宇宙能够而且必定是无中生有。”这句话也意味着他彻底抛弃 ...