【发布时间】:2021-01-26 09:41:43
【问题描述】:
我制作了简单的日常清洁检查应用程序。该应用程序很简单,用户观察某些区域并检查这些区域是否干净。毕竟检查用户需要向当局报告,将批准他的日常清洁工作。这里的权威是制造者、检查者和签名者。这里的 cln_daily 模型代表日常清洁工作,将有来自 User 模型的 maker、checker 和 signer。
我有一个名为 user 的应用,它在 model.py
中定制了 User 模型class User(AbstractUser):
username = models.CharField(max_length=50, unique=True)
email = models.EmailField(_('email address'), unique=True)
phone = models.IntegerField(_('phone number'), unique=True, blank=True, null=True)
此用户与组查询集具有多对多关系:maker、checker、signer
>>> print(Group.objects.all())
<QuerySet [<Group: maker>, <Group: checker>, <Group: signer>]>
在另一个名为 cleaning 的应用程序中,我有 cln_daily 模型,该模型与 User 模型具有外键关系基于他们的组强>。
class cln_daily(models.Model):
.
.
user_maker = models.ForeignKey(User,verbose_name="Maker's Signature",on_delete=models.CASCADE, related_name="makerSignature", blank=True, null=True,)
user_checker = models.ForeignKey(User, verbose_name="Checker's Signature",on_delete=models.CASCADE, related_name="checkerSignature", blank=True, null=True)
user_signer = models.ForeignKey(User, verbose_name="Signer's Signature",on_delete=models.CASCADE, related_name="signerSignature", blank=True, null=True)
所以我的意思是 user_maker 查询集的用户只属于组 maker。 user_checker 具有仅属于组 checker 的用户,而 user_signer 查询集具有仅属于组 signer 的用户。 如何在 model.py 中表达过滤后的用户模型?
【问题讨论】:
-
我认为这些信息不足以回答/解决您的问题,请您提供更多相关信息吗?我的意思是你一般想做什么?
-
我想根据用户组过滤用户并在外键中使用它们。例如:我过滤了 maker 组中的用户,并将它们与 user_maker 相关联。所以在 user_maker 我只有拥有组制造商的用户。 @易卜拉欣卡里米
-
当我说我需要更多信息时,我的意思是整个项目,因为我已经阅读了您的问题并且根本没有得到您想要完成的任务。 E.x:什么是鞋子制造商?他们做了什么吗?(是的,他们制造了 Cars 对象)我想要他们制造汽车的所有用户,但我不知道如何过滤它!这是一个问题
-
@EbrahimKarimi 我制作了简单的日常清洁检查应用程序。该应用程序很简单,用户观察某些区域并检查这些区域是否干净。毕竟检查用户需要向当局报告,将批准他的日常清洁工作。所以这里的权威是制造者、检查者和签名者。这里的 cln_daily 模型代表日常清洁工作,将有来自 User 模型的 maker、checker 和 signer。
-
编辑您的问题以进行澄清
标签: python django foreign-keys