1 from django.core.management.base import BaseCommand, CommandError
3 from emissions.models import NewsItem, Episode
5 from combo.data.models import Page, CellBase
6 from panikombo.models import ItemTopik
9 class Command(BaseCommand):
10 def handle(self, *args, **kwargs):
11 remaining_item_topik = set(ItemTopik.objects.all())
12 for topik_page in Page.objects.exclude(picture__isnull=True):
13 cells = CellBase.get_cells(page=topik_page)
15 if not hasattr(cell, 'get_included_items'):
17 for item in cell.get_included_items():
18 kwargs = {'page': topik_page}
19 if isinstance(item, NewsItem):
20 kwargs['newsitem'] = item
21 elif isinstance(item, Episode):
22 kwargs['episode'] = item
25 obj, created = ItemTopik.objects.get_or_create(**kwargs)
26 if obj in remaining_item_topik:
27 remaining_item_topik.remove(obj)
28 for item_topik in remaining_item_topik: