0

Ich habe dieses Modell.Konvertieren Sie den Auswahlwert, indem Sie das Modell in das Json-Format umwandeln

ESTADO = ( (0, 'Desabilitado'), (1, 'Habilitado') )

Klasse Cargo (models.Model): nombre = models.CharField (max_length = 50, verbose_name = 'Nombre', unique = True) descripcion = models.CharField (max_length = 100, ausführliche_name = 'Descripcion', leer = True) estado = models.IntegerField (Auswahl = ESTADO, Standard = 1, verbose_name = 'Estado')

def __unicode__(self): 
    return '%s - %s'%(self.nombre,self.get_estado_display()) 

class Meta: 
    verbose_name = 'Cargo' 
    verbose_name_plural = 'Cargos' 
    ordering = ['-nombre'] 

Ich habe diese Ansicht:

def listar_cargos (Anfrage): Object_List Cargo.objects.all =() = json serializers.serialize ('json', Object_List) return Httpresponse (JSON- content_type = 'application/json')

Dies gibt mich zurück, wenn Sie es ausführen:

[{"Felder": {"Beschreibung": "sdsds", "nombre": "dsds", "estado": 1}, "Modell": "erfinderisch. cargo "," pk ": 4}, {" Felder ": {" descripcion ":" Limpia "," nombre ":" Conserje "," estado ": 1}," Modell ":" inventario.cargo "," pk ": 2}]

Als Ich kehre zu mir zurück? wurde in den Wert der Wahl umgewandelt. das heißt { "descripcion": "sdsds", "nombre": "dsds", "estado": "Activo"}

+0

Leider ist es nicht klar, was Sie fragen. –

+0

object_list = Cargo.objects.all() –

+0

Ich möchte JSON übergeben, um den Wert 1 in "Active" mit der Auswahl –

Antwort

0
class Cargo(models.Model): 
    nombre = models.CharField(max_length=50,verbose_name='Nombre',unique=True) 
    descripcion = models.CharField(max_length=100,verbose_name='Descripcion', blank=True) 
    estado = models.IntegerField(choices=ESTADO,default=1, verbose_name='Estado') 

    def __unicode__(self): 
     return '%s - %s'%(self.nombre,self.get_estado_display()) 

    class Meta: 
     verbose_name = 'Cargo' 
     verbose_name_plural = 'Cargos' 
     ordering = ['-nombre'] 

    @property 
    def get_estado(self): 
     return self.get_estado_display() 

und verwenden Sie dann model_obj.get_estado anstatt model_obj.estado in Ihrem Serializer Definition.

müssen Sie möglicherweise Django Rest Framework, um dies erfolgreich zu tun. Wenn ja, siehe diese Frage https://stackoverflow.com/a/28954424/331974

Verwandte Themen