Я изучаю менеджеров в первый раз. Я пытаюсь выяснить, как правильно настроить этих менеджеров. Похоже, что менеджеры похожи в философии как SQL View.В Django Почему мой менеджер баз данных не работает?
Вот мой менеджер и класс:
class SubscriptionManager(models.Manager):
def active_officers(self):
officers = self.get_queryset().filter(Modified__gte=datetime.now()-timedelta(days=365)).filter(Subscription_Type='O')
return officers
def lifer(self):
return self.get_queryset().filter(Lifetime=True)
class Subscription(models.Model):
SType = (
('C', 'Civilian'),
('E', 'Enlisted'),
('O', 'Officer'),
)
Subscription_Type = models.CharField(max_length=1, choices=SType)
Lifetime = models.BooleanField(default=False)
Member = models.ForeignKey(Member)
Modified = models.DateField()
objects = SubscriptionManager()
def __str__(self):
return self.Member.first_name + " " + self.Member.last_name + ": " + self.Subscription_Type + "; last modified: " + self.Modified.strftime('%Y-%m-%d')
После установки я все еще может выполнить Subscription.objects.all()
без проблем, бушель, если я выпалить Subscription.objects.lifer()
, я получаю следующее сообщение об ошибке: AttributeError: 'Manager' object has no attribute 'lifer'
Я в python 3.4. Что мне не хватает? Спасибо
Хм это должно было сработать, и я просто копировал и вставлял его, и он работает для меня – awwester