simplify ressource for user and allow filtering by username
authorymh <ymh.work@gmail.com>
Thu, 17 Sep 2015 17:49:45 +0200
changeset 1440 e2cf46e32e9e
parent 1439 e0d8998e24be
child 1441 88f6b795bf95
simplify ressource for user and allow filtering by username
src/ldt/ldt/api/ldt/resources/user.py
--- a/src/ldt/ldt/api/ldt/resources/user.py	Wed Sep 16 22:53:58 2015 +0200
+++ b/src/ldt/ldt/api/ldt/resources/user.py	Thu Sep 17 17:49:45 2015 +0200
@@ -1,6 +1,5 @@
-from django.conf.urls import url
 from django.contrib.auth import get_user_model
-from tastypie.resources import Bundle, ModelResource
+from tastypie.resources import ModelResource, ALL
 
 User = get_user_model()
 
@@ -9,21 +8,6 @@
         allowed_methods = ['get']
         queryset =  User.objects.all()
         resource_name = 'users'
-    
-    def prepend_urls(self):
-        return [
-            url(r"^(?P<resource_name>%s)/(?P<username>[\w\d_.-]+)/$" % self._meta.resource_name, self.wrap_view('dispatch_detail'), name="api_dispatch_detail"),
-        ]
-    
-    def get_resource_uri(self, bundle_or_obj=None, url_name='api_dispatch_list'):
-        if bundle_or_obj is None:
-            return super(UserResource, self).get_resource_uri(bundle_or_obj, url_name)
-        kwargs = {
-            'resource_name': self._meta.resource_name,
-            'api_name': self._meta.api_name
-        }
-        if isinstance(bundle_or_obj, Bundle):
-            kwargs['username'] = bundle_or_obj.obj.username
-        else:
-            kwargs['username'] = bundle_or_obj.username
-        return self._build_reverse_url("api_dispatch_detail", kwargs=kwargs)
\ No newline at end of file
+        excludes = ['email', 'password', 'is_superuser', 'is_staff']
+        filtering = {'username': ALL, }
+        detail_uri_name = 'username'