我运行服务器来测试我的习惯跟踪程序。不确定我在格式化时出错的原因:AttributeError:“习惯”对象没有属性“目标”。已经包括了我的models.py。我需要你的帮助,了解我写错了什么,以及如何修复代码。多谢各位
class Habit(models.Model):
name = models.CharField(max_length=60)
goal_nbr = models.IntegerField(default=0, null=True, blank=True)
goal_description = models.CharField(max_length=60, null=True, blank=True)
start_date = models.DateField()
end_date = models.DateField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
user = models.ForeignKey(
User, related_name="habit", on_delete=models.CASCADE)
@property
def duration(self):
delta = end_date - start_date
return f'{ delta } days'
def __str__(self):
return f"Your chosen habit is {self.name}, with a goal of {self.goal_nbr} {self.goal._description} for {self.duration} days, from {self.start_date} to {self.end_date}"
class Activity(models.Model):
# name = models.CharField(max_length=60)
result_nbr = models.IntegerField(default=0, null=True, blank=True)
created_at = models.DateField(auto_now_add=True)
updated_at = models.DateField(auto_now=True)
user = models.ForeignKey(
User, related_name="activity", on_delete=models.CASCADE)
habit = models.ForeignKey(
'Habit', related_name="activity", on_delete=models.CASCADE)
@property
def diff_between_goal_result(self):
diff_nbr = result_nbr - self.habit.goal_nbr
return f'{ diff_nbr }'
class Meta:
constraints = [models.UniqueConstraint(
fields=['created_at', 'habit'], name='one_update_per_day'), ]
def __str__(self):
return f"Today you achieved: {self.result_nbr} of your {self.habit.name} {self.habit.goal_description}"
目前没有回答
相关问题 更多 >
编程相关推荐