Django 模型:从对象获取用户
Django models: getting users from object
我刚开始使用 Django,我喜欢它!然而,它仍然非常具有挑战性。我有一个模型 Shift,它使用模型 Assign 为它分配了用户。我想获取分配给某个班次的所有用户,但我只能获取 Assign 对象。你们知道我应该如何更改我的查询吗?
上面的问题给了我这两个模型:
class Shift(models.Model):
shift_location = models.CharField(max_length=200)
def get_shift_users(self):
Assign.objects.filter(shift=self)
class Assign(models.Model):
shift = models.ForeignKey(Shift, unique=False)
user = models.ForeignKey(User, unique=False)
如何 return 使用方法 get_shift_users 的所有用户,而不是所有 Assign 对象?我以为
Assign.objects.filter(shift=self).user
会工作...
从User
开始
def get_shift_users(self):
return User.objects.filter(assign_set__shift=self)
我刚开始使用 Django,我喜欢它!然而,它仍然非常具有挑战性。我有一个模型 Shift,它使用模型 Assign 为它分配了用户。我想获取分配给某个班次的所有用户,但我只能获取 Assign 对象。你们知道我应该如何更改我的查询吗?
上面的问题给了我这两个模型:
class Shift(models.Model):
shift_location = models.CharField(max_length=200)
def get_shift_users(self):
Assign.objects.filter(shift=self)
class Assign(models.Model):
shift = models.ForeignKey(Shift, unique=False)
user = models.ForeignKey(User, unique=False)
如何 return 使用方法 get_shift_users 的所有用户,而不是所有 Assign 对象?我以为
Assign.objects.filter(shift=self).user
会工作...
从User
开始
def get_shift_users(self):
return User.objects.filter(assign_set__shift=self)