with tutorial framework english docs applications python django django-models django-forms

python - tutorial - Forma de modelo de Django Campo de muchos a muchos no muestra el valor



python framework (1)

Tienes que agregar un método para representar tu objeto con una cadena:

Si está usando python 2, use __unicode__ y en python 3 use: __str__ .

Ej. (Con python 2):

class AccountFilters(models.Model): name = models.CharField(max_length=255) # other attributes def __unicode__(self): return self.name class AccountParameters(models.Model): acctFilterName = models.ForeignKey(AccountFilters) excludeClassification = models.ManyToManyField(ClassificationNames) tradingCash = models.FloatField() def __unicode__(self): return self.acctFilterName.name

Ej. (Con python 3):

class AccountFilters(models.Model): name = models.CharField(max_length=255) # other attributes def __str__(self): return self.name class AccountParameters(models.Model): acctFilterName = models.ForeignKey(AccountFilters) excludeClassification = models.ManyToManyField(ClassificationNames) tradingCash = models.FloatField() def __str__(self): return self.acctFilterName.name

Tengo un campo de varios a muchos y un campo de clave externa en un formulario modelo. Parece que está haciendo la consulta correcta, pero el resultado son Objetos y no los valores del objeto.

¿Debo sobrescribir el queryset utilizando un método VALUES_LIST?

forms.py

class Meta: model = AccountParameters fields =[''acctFilterName'', ''excludeClassification'', ''tradingCash'',] #exclude = [''acctFilterName''] labels = { ''acctFilterName'': _(''Account Filters:''), ''excludeClassification'': _(''Exclude Classifications: ''), ''tradingCash'':_(''Remove accounts whose trading cash < % of AUM: '') }

models.py

class AccountParameters(models.Model): acctFilterName = models.ForeignKey(AccountFilters) excludeClassification = models.ManyToManyField(ClassificationNames) tradingCash = models.FloatField()