You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

managers.py 921B

1234567891011121314151617181920212223242526
  1. from django.db import models
  2. class OpenBasketManager(models.Manager):
  3. u"""For searching/creating OPEN baskets only."""
  4. status_filter = "Open"
  5. def get_query_set(self):
  6. return super(OpenBasketManager, self).get_query_set().filter(status=self.status_filter)
  7. def get_or_create(self, **kwargs):
  8. return self.get_query_set().get_or_create(status=self.status_filter, **kwargs)
  9. class SavedBasketManager(models.Manager):
  10. u"""For searching/creating SAVED baskets only."""
  11. status_filter = "Saved"
  12. def get_query_set(self):
  13. return super(SavedBasketManager, self).get_query_set().filter(status=self.status_filter)
  14. def create(self, **kwargs):
  15. return self.get_query_set().create(status=self.status_filter, **kwargs)
  16. def get_or_create(self, **kwargs):
  17. return self.get_query_set().get_or_create(status=self.status_filter, **kwargs)