2016-01-04 31 views
0

我似乎无法让我的Django模型正常工作。事情是,我的下拉菜单返回一个数字而不是“ja”或“nej”(意思是丹麦语是或否)。但是,当我在管理面板内部创建模型时,一切正常。但只要我尝试在前端显示数据,就会出错。为什么我的IntegerField,用于创建下拉菜单,不起作用?

我已经提供了代码,以防你想看看。

YESNO_CHOICES = (
    (0, 'Ja'), 
    (1, 'Nej') 
    ) 

class Client(models.Model): 
    fulde_navn = models.CharField(max_length=75) 
    adresse = models.CharField(max_length=100) 
    tidligere_klient = models.IntegerField(choices=YESNO_CHOICES, null=True, blank=True) 
    beskrivelse = models.TextField(null=True, blank=True) 
    arbejde = models.CharField(max_length=200) 
    relateret_til_andre_klienter = models.IntegerField(choices=YESNO_CHOICES, null=True, blank=True) 
    vurder_sidste_session = models.IntegerField(choices=SESSION_CHOICES, null=True, blank=True) 
    profilbillede = models.ImageField('Profile picture', 
           upload_to='profile_pics/%Y-%m-%d/', 
           null=True, 
           blank=True) 

前端部:

<div class="container profile-body"> 
    <div class="row"> 
    <div class="col-sm-4"> 
     <ul class="list-group"> 
      <li class="list-group-item"><b>Adresse: </b>{{ client.adresse }}</b></li> 
      <li class="list-group-item"><b>Tidligere klient: </b>{{ client.tidligere_klient }}</b></li> 
      <li class="list-group-item"><b>Adresse: </b>{{ client.adresse }}</b></li> 
      <li class="list-group-item"><b>Adresse: </b>{{ client.adresse }}</b></li> 
      <li class="list-group-item"><b>Adresse: </b>{{ client.adresse }}</b></li> 
+0

你是如何显示你的下拉?在一个表单中?如果是这样,发布你的代码,如果没有,仍然发布你的代码。 –

+0

https://docs.djangoproject.com/zh/dev/ref/models/instances/#django.db.models.Model.get%5FFOO%5Fdisplay –

回答

1

的数据被存储在数据库中作为整数。要显示的是/否值,则需要使用此:

{{ get_tidligere_klient_display }} 

这将与存储在数据库中的值并显示正确的字。像:

{% for client in client_list %} 

    {{ client.get_tidligere_klient_display }} 

{% endfor %} 
+0

它的工作,谢谢你! – DBE7

+0

如果有帮助,请将其标记为已接受的答案,如果您喜欢,请点赞:) – masnun