22
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'

ivanleoncz
  • 9,070
  • 7
  • 57
  • 49
user1003121
  • 1,169
  • 3
  • 9
  • 14

1 Answers1

45
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.

DrTyrsa
  • 31,014
  • 7
  • 86
  • 86
  • 7
    What would happen if I want to get data from multiple tables, in that case I would have to use 'values', and I come back to square one. – Agniva De Sarker Mar 30 '13 at 09:04
  • Note: You still have to use the fields parameter when serializing, to restrict the output to certain fields – H4kor Feb 10 '15 at 16:00