from timeside.core.tools.test_samples import generateSamples
from telemeta.models import *
from telemeta.util.unicode import *
-
+from telemeta.views import PlaylistView
class Command(BaseCommand):
help = "Export all items or collections metadata to a CSV file"
def handle(self, *args, **options):
path = args[-1]
public_id = args[-2]
+ resource_type = args[-3]
f = open(path, 'w')
playlist = Playlist.objects.get(public_id=public_id)
- elements = []
- for resource in playlist.resources.all():
- if resource.resource_type == "item":
- elements.append(MediaItem.objects.get(public_id=resource.resource_id))
- elif resource.resource_type == "collection":
- elements.append(MediaCollection.objects.get(public_id=resource.resource_id))
+ view = PlaylistView()
+ elements = view.get_elements(playlist, resource_type)
writer = UnicodeWriter(f)
csv = CSVExport(writer)
csv.write(elements)