Django中的ModelChoiceField

时间:2014-03-05 11:24:34

标签: django

我已将ModelChoiceField用于ModelForm中的一个:

class PackageModelForm(ModelForm):
    packageName = forms.CharField(max_length=128, label="Name", error_messages=     {'required': _(u'Please enter Package Name')})
    vehicleModelId = forms.ModelChoiceField(label="Model",queryset=VehicleModels.objects.order_by('name').all())
    type_id =forms.ModelChoiceField(label="Package Type",queryset=Package_type.objects.order_by('name').all())       
    amount = forms.RegexField(regex="^([0-9]*)$",  label="Amount (in rupees)" , max_length=10, required=True, error_messages={'required': _(u'Enter Amount'), 'invalid': _(u'Enter a valid Amount.')})    



class Meta:
    model = Packages
    exclude = ('status','register', 'organizationId')

这里type_id是其他模型的外键,称为'Packages'

但是这里的type_id字段在'airpot','railwaystation'的下拉字段中显示选择选项为'package_type object'

如何将对象值显示为'Airport,'Railwaystation'.....

1 个答案:

答案 0 :(得分:2)

您可能忘了设置unicode功能:

class Packages(models.Model):
    # fields...

    def __unicode__(self):
        return self.name