问题标签 [django-related-manager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
django - 没有后向关系的 Django ManyToMany 与“self”的关系
这里有几个关于后向关系的问题,但我要么太笨,无法理解它们,要么认为它们不适合我的情况。
我有模特
我已经创建了表格,我将存储的信息组合在一起。它像这样在数据库中存储对象关系:
桌子:
所以当我显示对象 first_related_object 并检查与
然后我得到“original_object”。但我不需要它。我希望它不会显示出那样的向后关系。
编辑1
所以我很讨厌解释自己。
也许这段代码会更好地说明我想要什么。
现在唯一的问题是 - 如果我不想要它们产生的结果,我什至应该使用 stuff.all() 并且应该编写我自己的管理器/方法来获取排除后向关系的对象列表。
/编辑1
编辑2回应亨利·弗洛伦斯:
好的 - 我确实用空基对其进行了测试,看起来对称 = False 确实存在数据库级别的差异。我认为。
我创建了对称 = False 的空表,然后创建添加关系并没有产生反向关系。如果我创建了没有对称的空表 = False。然后他们是。设置symmetric = False 在创建表之后没有任何区别。所以我想差异在于数据库级别。
/edit2 那么我应该在这里做什么?
写我自己的经理还是什么的?
艾伦
django - Django ORM中的反向关系(ForeignKey)具有唯一组合
嗨,我只是想知道这是否可以通过 Django ORM 实现:
请忽略型号名称等,它们不是真实的
在views.py中:
这没关系,工作正常,我想要实现的是我希望在视图中获取 1 个查询,应用一个连接图像。LandingPageView 显示带有标记为首页图像的图像的项目列表,因为 Django 声明(并且正确地使用 SQL)反向 select_related 是不可能的,因为 Item 可以有很多图像,但是......一个 Item 只能有一个首页图片。我知道在重构方面还有其他方法可以实现这一点,目前因为我更喜欢避免分区模型,所以我遵循一种混合方式:
然后在视图中:
这很好用,但我想知道是否有办法通过 Django 关系查询集来实现在单个查询集中获取整个集合。请不要回答或询问原始查询,我知道它们确实存在并且甚至在这种类型上也使用过它们,我只是想知道上述是否可以通过 ORM 层实现。
django - 构建一个返回多个值的 Django "ForeignKey"
我想建立一个新的相关字段类型。这是一个简单的例子:
给定c = Collection()
:
c.item
应该返回一个等效于 的查询集Item.objects.filter(id=c.item_id)
。- 该查询集确实需要是 CustomQuerySet 的一个实例
Item.objects.filter(collections__name='SomeName')
应该按预期工作。- 该操作
Collection.objects.filter(item__name='OtherName', item__invalid_date__isnull=True)
应按预期工作。
我意识到这可以用 a 来实现,ManyToManyField
但我不想手动将项目对象添加/删除到 c.item。我不需要连接表,因为 c.item 总是使用单个 id 值,它不是 Collection 上的主键。并且c.item
可能/不/包含具有不同 id 值的项目对象。
我知道这可能需要子类化django.db.models.fields.related.ForeignRelatedObjectsDescriptor
和/或django.db.models.fields.related.ForeignObject
(或可能是 ManyToMany 等价物)。
python - 根据Django中的几个条件从几个关系表中选择数据
我将 Django 1.6 与 Python 2.7 一起使用,但相关模型很少:
是否可以进行单行查询来检查这些条件:
Key.is_valid
一定是True
Entity.active
一定是True
Profile.profile_id
不能是null
(或None
)
我唯一可以传递给该查询的是request.user
.
django - 如何在没有命中数据库的情况下在 Django 中获取相关的集合模型
在这里,您总是会得到两个单独的数据库调用,并且在任何地方添加 select_related() 根本无济于事。一个额外的数据库调用并不那么重要。
这里有什么想法吗?
django - 通过 RelatedManager 的 __count 过滤 QuerySet
我有一个 QuerySet 我想按related_name
. 目前我有这样的事情:
但是,当我运行它时,我收到以下错误消息:
我猜这个查询在每个links_by_source
连接上单独运行,因此没有count
功能,因为它不是我正在使用的 QuerySet。有没有一种过滤方法,对于返回的每个对象,数量links_by_source
正好是 1?
django - 获取所有父类 Django - 跟随外键 UP
我有以下型号:
假设我在数据库中有以下类别:
我可以通过执行以下操作获得顶级类别:
但这并不好,因为一个产品可以是 x 个类别的深度。
如何获取数组或其他内容中的所有相关类别?
django - 设置 django 相关模型集并删除集合中不再存在的模型
在 Django 文档中,它提到当您直接指定新的相关集合时,不再在集合中的任何模型都只是解除关联而不是删除。
换句话说,如果你有这样的情况:
book 3 模型不再与作者关联,但并未删除。有没有办法解除和删除模型?
django - 将 django-reviews 包与使用自定义用户模型的应用程序一起使用
我正在开发一个 django 应用程序,我在其中使用自定义用户模型,AUTH_USER_MODEL
即AUTH_USER_MODEL = 'account.User'
我扩展了AbstractBaseUser
类以创建我的模型,就像
在我的settings.py
文件中,我添加AUTH_USER_MODEL = 'account.User'
的意思是现在我的用户模型是 accounts.User 而不是 django.contrib.auth.User。
我想在我的 webapp 中添加 django-reviews 应用 程序以获取评论,但问题是django-reviews使用 DJango.contrib.auth.User 作为其默认 AUTH_USER_MODEL。
现在它给了我错误
django.core.management.base.CommandError:一个或多个模型未验证:reviews.review:'user'定义了与模型'auth.User'的关系,该模型已被换出。更新指向 settings.AUTH_USER_MODEL 的关系。
告诉我如何在不使用默认身份验证模型作为我的 AUTH_USER_MODEL 的情况下将 django-reviews 与我的应用程序一起使用。
django - Django返回`无法分配“1”:“Likes.user_id”必须是“用户”实例。
我有这些models
,我整晚都在努力想知道如何保存到Likes
桌子上,但它不会起作用。
说user_id1 = 1
真实存在于表中,post_id11 = 11
也存在,且该用户点击该帖子。
现在我想保存到 Likes 表,这就是我所做的;
这是错误:
ValueError at /myapp/likeRecorder/
Cannot assign "1": "Likes.user_id" must be a "Users" instance.
我整晚都在谷歌上试图解决这个问题。帮助!