Я новичок в Django, и мне нужно объявить поле, в котором хранится количество попыток доставки, и для этого мне нужно проверить, сколько попыток доставки было предпринято для данного пакета, но когда я пытаюсь отфильтроватьобъекты, в которых package_id совпадает с текущим сертификатом, я получаю сообщение об ошибке «Я» не определено.что я делаю не так?
Я пытался использовать модели.F ('package_id') вместо self.package_id, но это дает мне все объекты, потому что он проверяет package_id каждого экземпляра на себя.
class Package(models.Model):
content = models.CharField(max_length=150)
weight = models.FloatField()
destiny = models.ForeignKey(Company)
class Certification(models.Model):
def increment_trial(self):
last = Certification.objects.filter(
package_id=self.package_id).order_by('trial').last()
if not last:
return 1
else:
return last.trial + 1
date = models.DateField(auto_now_add=True)
package = models.ForeignKey(Package, on_delete=models.CASCADE)
trial = models.IntegerField(default=increment_trial(self))
note = models.TextField()
Мне нужен какой-то способ ссылки на сам экземпляр внутри фильтра или другой способ воспроизвести описанное поведение.
PS: я почти не говорю по-английски.