def _update_sub_category_products(self): catalog = Catalog.objects.get(c_id = self.c_id) subs = get_cats_by_parent(catalog,[]) products = Products.objects.exclude(p_deleted = True).filter(p_catalog_id__in = subs, p_active = True, p_price__gt = 0) return products def category_sub_products(self): products = self._update_sub_category_products() return products
Вторая используется во вьюхах и темплейтах. Но она возвращает, по сути, то же, что и первая, она просто вызывает первую и отдает ее результаты.
Почему было не оставить одну функцию? Может, в этом есть какой-то скрытый смысл, который я пока не понимаю (ну не знаю, с точки зрения безопасности, к примеру)?