Well that would require me to use simplejson.dumps(data) right? I need to
use my custom serializer in order to do a deep serialization of the model to
model dependencies. As far as I understand, serializers are meant to take
querysets or something of the sort, not dictionaries containing various
kinds of data. Please correct me if I'm wrong. So I can't do something like
serializers.serialize('json" {'queryset' : queryset, 'paging_data' :
paging_data}). Similarly if I use simplejson.dumps, I lose the ability to
get that deep serialization.

-Dmitrij


On Tue, Sep 28, 2010 at 11:43 PM, Steve Holden <holden...@gmail.com> wrote:

> On 9/28/2010 10:42 PM, Dmitrij wrote:
> > I am trying to implement paging across ajax calls. The page should not
> > refresh when the user wants to see the next x num of results.
> >
> > Here is my problem. Returning the QuerySet is super simple. I just do
> > (sumaJson is custom)
> >
> >     data = serializers.serialize('sumaJson', result_page.object_list,
> > relations=('first_major', 'country_of_origin', 'second_major'))
> >     return HttpResponse(data, mimetype="application/json")
> >
> > Now I also want to return things like
> >
> >     result_page.has_previous()
> >     result_page.has_next()
> >     result_page.paginator.count
> >
> > and so on. I for the life of me can't figure out how to get both
> > across in one response. I can't add this info to
> > result_page.object_list because then the serializer fails. If I
> > something of the sort of
> >
> >     simplejson.dumps(paging_info + result_page.object_list)
> >
> > Then in the javascript the QuerySet is no longer a list of objects but
> > just a big string of characters which can't be interpreted with
> >
> >     $.each(data.data, function(index, item){
> >
> > I tried some bad hacks like creating a fake object and putting it in
> > the object_list, serializing this and then deleting the object. This
> > allows me to get the data across. However, I don't want to be creating
> > and deleting fake objects.
> >
> > I don't want to meddle with the serializer. I don't want to send a
> > second ajax request once I get the querySet back to get the paging
> > info.
> >
> > Am I missing something? Is there an easy way to get both across in one
> > response? Thanks!
> >
> I don't know about a fake object, but surely if you put everything you
> want in a Python dict and then serialize that it will arrive in
> JavaScript as an object with named fields, which you can use as you want
> by referencing the fields as object attributes. Or am I missing something?
>
> regards
>  Steve
>
> --
> DjangoCon US 2010 September 7-9 http://djangocon.us/
>
> --
> You received this message because you are subscribed to the Google Groups
> "Django users" group.
> To post to this group, send email to django-us...@googlegroups.com.
> To unsubscribe from this group, send email to
> django-users+unsubscr...@googlegroups.com<django-users%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/django-users?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to