我有一个 Django 查询,我想通过 test_id 对测试尝试的次数进行分组,并在每个测试中获得平均值。
test_attempts 表记录用户对给定测试所做的每次测试尝试。我想找到每次测试的平均尝试次数
这是我的查询:
average = TestAttempts.objects.values('test_id').annotate(Avg(Count('test_id'))).filter(user_id=id)
我收到以下错误:“计数”对象没有属性“拆分”
有没有办法处理这个而不必编写原始 SQL?
更新:这是 TestAttemt 模型
class TestAttempts(models.Model):
id = models.IntegerField(primary_key=True)
user_id = models.IntegerField()
test_id = models.IntegerField()
test_grade = models.DecimalField(max_digits=6, decimal_places=1)
grade_date_time = models.DateTimeField()
start_time = models.DateTimeField()
seconds_taken = models.IntegerField()
taking_for_ce_credit = models.IntegerField()
ip_address = models.CharField(max_length=25L)
grade_points = models.DecimalField(null=True, max_digits=4, decimal_places=1, blank=True)
passing_percentage = models.IntegerField(null=True, blank=True)
passed = models.IntegerField()
class Meta:
db_table = 'test_attempts'