add media url to content api.
authorcavaliet
Fri, 23 Nov 2012 11:13:11 +0100
changeset 965 c8d23b9cb522
parent 964 647d63adf145
child 966 bc51d4854488
add media url to content api.
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()