[Django]-Get a list of objects in tastypie (in another view)

5👍

Here’s what I’ve come up with. I don’t especially like that both the request and the QueryDict are copied, but I can’t think of anything else at the moment, other than copying big portions of the tastypie code.

from copy import copy

from django.views.generic import TemplateView

from incremental.sources.resources import SourceResource
resource = SourceResource()

class AppView(TemplateView):
    'Base view for the Source parts of the app'
    template_name = 'sources/base.html'

    def get_context_data(self, **data):
        'get context data'
        tmp_r = copy(self.request)
        tmp_r.GET = tmp_r.GET.copy()
        tmp_r.GET['format'] = 'json'

        data.update({
            'seed': resource.get_list(tmp_r).content
        })
        return data

3👍

In order to avoid the request copying stuff, you can set json as the default format, for instance in your Resource you can overload the following method:

SourceResource(Resource):
  def determine_format(self, request):
    return "application/json"

Leave a comment