# HG changeset patch # User cavaliet # Date 1353665591 -3600 # Node ID c8d23b9cb5229ef250bec7aeaa28d96fb606b2d8 # Parent 647d63adf145b97821a70b44c0e78174d81ff2c0 add media url to content api. diff -r 647d63adf145 -r c8d23b9cb522 src/ldt/ldt/api/ldt/resources/content.py --- a/src/ldt/ldt/api/ldt/resources/content.py Thu Nov 22 23:55:43 2012 +0100 +++ b/src/ldt/ldt/api/ldt/resources/content.py Fri Nov 23 11:13:11 2012 +0100 @@ -1,20 +1,33 @@ from django.conf.urls.defaults import url -from ldt.ldt_utils.models import Content +from ldt.ldt_utils.models import Content, Media from tastypie.resources import Bundle, ModelResource from tastypie import fields from ldt.indexation import get_results_list from itertools import groupby - +class MediaResource(ModelResource): + + class Meta: + allowed_methods = ['get'] + resource_name = 'medias' + queryset = Media.objects.all() + + def get_resource_uri(self, bundle_or_obj): + if isinstance(bundle_or_obj, Bundle): + return bundle_or_obj.obj.videopath + bundle_or_obj.obj.stream_src + else: + return bundle_or_obj.videopath + bundle_or_obj.stream_src + class ContentResource(ModelResource): front_project = fields.ForeignKey('ldt.api.ldt.resources.ProjectResource','front_project', null=True, full=False) + media_url = fields.ForeignKey('ldt.api.ldt.resources.content.MediaResource','media_obj', null=True, full=False) class Meta: allowed_methods = ['get'] resource_name = 'contents' queryset = Content.objects.select_related('front_project').all() - excludes = ['media_obj'] + #excludes = ['media_obj'] def get_object_list(self, request): return Content.safe_objects.all()