您最多选择25个主题 主题必须以字母或数字开头,可以包含连字符 (-),并且长度不得超过35个字符

utils.py 1.1KB

1234567891011121314151617181920212223242526272829
  1. from oscar.core.loading import get_class, get_classes
  2. OrderReportGenerator = get_class('order.reports', 'OrderReportGenerator')
  3. ProductReportGenerator, UserReportGenerator = get_classes('analytics.reports', ['ProductReportGenerator', 'UserReportGenerator'])
  4. OpenBasketReportGenerator, SubmittedBasketReportGenerator = get_classes(
  5. 'basket.reports', ['OpenBasketReportGenerator', 'SubmittedBasketReportGenerator'])
  6. OfferReportGenerator = get_class('offer.reports', 'OfferReportGenerator')
  7. VoucherReportGenerator = get_class('voucher.reports', 'VoucherReportGenerator')
  8. class GeneratorRepository(object):
  9. generators = [OrderReportGenerator,
  10. ProductReportGenerator,
  11. UserReportGenerator,
  12. OpenBasketReportGenerator,
  13. SubmittedBasketReportGenerator,
  14. VoucherReportGenerator,
  15. OfferReportGenerator]
  16. def get_report_generators(self):
  17. return self.generators
  18. def get_generator(self, code):
  19. for generator in self.generators:
  20. if generator.code == code:
  21. return generator
  22. return None