Django - 当前用户的模型助手属性

时间:2011-10-07 07:53:17

标签: django django-models

我正在寻找一种方法来从模型帮助器属性 获取使用当前登录用户过滤的对象

让我举个例子

class Exo(models.Model):
  """Exercises"""
  text = models.TextField()

class Score(models.Model):
  """Scores of users by exercise"""
  exo = models.ForeignKey(Exo)
  user = models.ForeignKey(User)
  score = models.IntegerField()
  class Meta:
    unique_together = (('exo', 'user',),)

从模型Exo我希望能够获得登录用户的分数

class Exo(models.Model):
  """Exercises"""
  text = models.TextField()
  def get_logged_score():
    return self.score_set.filter(user=current_logged_user)[0]

Exo对象中,如何获得current_logged_user的分数?

修改:我们的想法是使用模板中的get_logged_score,因此我无法传递任何参数

1 个答案:

答案 0 :(得分:2)

传递它。

def get_logged_score(self, user):
   ...