'dict' object has no attribute '_meta' on Django Serializer

user1003121 picture user1003121 · Jan 30, 2012 · Viewed 25.4k times · Source
def display_home(request):
    from datetime import *
    now=datetime.today()
    print 'Month is %s'%now.month

events=Event.objects.filter(e_date__year=datetime.today().year).filter(e_date__month=datetime.today().month,e_status=1).values('e_name','e_date')
return render_to_response("SecureVirtualElection/home.html",{'events': serializers.serialize("json",events, fields=('e_name','e_date'))},context_instance=RequestContext(request))

...
AttributeError: 'dict' object has no attribute '_meta'

Answer

DrTyrsa picture DrTyrsa · Jan 30, 2012
events=Event.objects.filter(e_date__year=datetime.today().year).filter(e_date__month=datetime.today().month,e_status=1).only('e_name','e_date')

Serializer waits for normal queryset, not ValuesQuerySet (which is returned by values). If you want to query only certain fileds, use only.