Opened 13 years ago

Last modified 9 years ago

#16127 closed Bug

Queryset which uses defer() method not serialize in Json — at Version 1

Reported by: eguevara2012@… Owned by: nobody
Component: Core (Serialization) Version: 1.3
Severity: Normal Keywords:
Cc: Triage Stage: Accepted
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description (last modified by Ramiro Morales)

Hello!
I have this function using json and a queryset with defer() method, but the fields not target in queryset, i need only "id" and "nome":

models.py

class Pessoa(models.Model):
    nome = models.CharField(max_length=50)
    data_nascimento = models.DateField()
    data_inclusao = models.DateField()
    cpf = models.CharField(max_length=14)
    telefone = models.CharField(max_length=13)
    celular = models.CharField(max_length=13)
    
    class Meta:
        abstract = True

class Proprietario(Pessoa):  
    endereco = models.ForeignKey(Endereco)

    def __unicode__(self):
            return "%s, %s" % (self.nome, self.cpf)

views.py:

def load_proprietarios(request):
    data = serializers.serialize('json',Proprietario.objects.defer('cpf','telefone','celular','data_nascimento','data_inclusao',),ensure_ascii=False))
    return HttpResponse(data, mimetype="application/javascript")

This is the output:

[{"pk": 1, "model": "proprietario.proprietario_deferred_celular_cpf_telefone_data_inclusao_data_nascimento", "fields": {}}]

Note that the "id" and the "nome" fields (class Proprietario / class abstract Pessoa) does not appear after defer() method.

Regards.

Change History (1)

comment:1 by Ramiro Morales, 13 years ago

Component: Database layer (models, ORM)Core (Serialization)
Description: modified (diff)
Triage Stage: UnreviewedAccepted
Note: See TracTickets for help on using tickets.
Back to Top