假设用户可以列出Types
. 当他们添加到他们的类型列表中时,UserType
会创建一个新对象,其中 User 和 Type 为ForeignKeys
。
其他用户可以“喜欢”用户列出的各个类型 ( UserTypes
)。
鉴于我查询用户的UserTypes
,我怎样才能最好地获取QuerySet 中UserLikes
每个的数量以在模板中使用?UserType
我会简单地遍历,查询每个并将结果作为单独的列表返回吗?这似乎很混乱。
class Type(model.Models):
name = models.CharField(max_length=100, blank=False)
description = models.TextField(max_length=1000, blank=True)
created_by = models.ForeignKey(User, blank=True, null=True, unique=False)
class UserType(model.Models):
user = models.ForeignKey(User, unique=False)
type = models.ForeignKey(Type, unique=False)
is_active = models.BooleanField(default=True)
class UserLike(model.Models):
user = models.ForeignKey(User, unique=False)
user_type = models.ForeignKey(UserType, unique=False)