使用自定义模型过滤用户模型
Filter User model using custom model
我是 Django 的新手。
我制作了一个通讯应用程序来向订阅 it.Hence 的人发送邮件,我定义了一个扩展用户模型的模型。
class UserProfile(models.Model):
user = models.OneToOneField(User)
contact_number = models.CharField(max_length=10,null=True)
address = models.CharField(max_length=200,null=True,blank=True)
subscribe_to_newsletter = models.BooleanField(default=False)
我如何访问那些已订阅时事通讯的用户的电子邮件?我找不到过滤用户和关联 User
和 UserProfile
的方法。
在 django 中,您可以 filter across relationships 使用 __
。
这将为您提供所有已订阅时事通讯的用户:
User.objects.filter(userprofile__subscribe_to_newsletter=True)
如果您只想要电子邮件,您可以使用 values_list
。这将为您提供电子邮件列表:
User.objects.filter(userprofile__subscribe_to_newsletter=True).values_list('email', flat=True)
我是 Django 的新手。 我制作了一个通讯应用程序来向订阅 it.Hence 的人发送邮件,我定义了一个扩展用户模型的模型。
class UserProfile(models.Model):
user = models.OneToOneField(User)
contact_number = models.CharField(max_length=10,null=True)
address = models.CharField(max_length=200,null=True,blank=True)
subscribe_to_newsletter = models.BooleanField(default=False)
我如何访问那些已订阅时事通讯的用户的电子邮件?我找不到过滤用户和关联 User
和 UserProfile
的方法。
在 django 中,您可以 filter across relationships 使用 __
。
这将为您提供所有已订阅时事通讯的用户:
User.objects.filter(userprofile__subscribe_to_newsletter=True)
如果您只想要电子邮件,您可以使用 values_list
。这将为您提供电子邮件列表:
User.objects.filter(userprofile__subscribe_to_newsletter=True).values_list('email', flat=True)