DRF表单呈现对象属性(名称)而不是对象

时间:2016-01-19 06:52:46

标签: python django python-3.x django-rest-framework

表单选择选项显示“调查对象” - 如何让它来呈现调查对象? lookupfield使用调查对象'name'属性 - 如何让POST表单也使用它?

<option value="http://127.0.0.1:8000/data/surveys/mysurvey/">Survey object</option>
<option value="http://127.0.0.1:8000/data/surveys/anothersurvey/">Survey object</option>

1 个答案:

答案 0 :(得分:1)

&#34; Survery object&#34;是模型的默认表示形式。因此,在模型Survery中的某个位置,您必须定义其字符串表示形式,例如

class Survey(models.Model):
    name = CharField(max_length=255)

    def __str__(self):     # or def __unicode__(self) in Python 2
        return self.name

在Python 2中,Django将在您的模型上调用__unicode__()。在Python 3中,它将调用__str__()