Skip to content

Instantly share code, notes, and snippets.

@aregee
Forked from mattdeboard/resources.py
Created September 5, 2013 22:44
Show Gist options
  • Save aregee/6457245 to your computer and use it in GitHub Desktop.
Save aregee/6457245 to your computer and use it in GitHub Desktop.
class ProfileResource(ModelResource):
user = fields.ForeignKey(UserResource, 'user')
def prepend_urls(self):
urls = [
url(r'^(?P<resource_name>%s)/(?P<username>[\w\d_.-]+)/$' %\
self._meta.resource_name, self.wrap_view('user_by_username'),
name='profile_user_by_username')
]
return urls
def user_by_username(self, request, **kwargs):
response_class = HttpResponse
try:
user = User.objects.get(username=kwargs['username'])
except User.DoesNotExist:
data = []
response_class = HttpResponseNotFound
else:
bundle = Bundle(user, request=request)
data = UserResource().full_dehydrate(bundle)
finally:
return self.create_response(request, data, response_class)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment