2017-03-27 5 views
0

私にはほとんど問題がありません。私はプロジェクトとメンバーのようなモデルを持っています。すべてのプロジェクトにメンバーがいます。テンプレートでは、ユーザーとその役割を特定のプロジェクトに示したいと思っています。それは動作しますが、それは私に役割の数を示しています。私は人間が読める価値を「ビジネスアナリスト」e.c.c.どのようにその価値観を取ることができますか?CharField choiceは人間が判読可能な値を示します

models.py:

class Project(models.Model): 
    members = models.ManyToManyField(User, through='Member', help_text=_('Members')) 

class Member(models.Model): 
    user = models.ForeignKey(User, on_delete=models.CASCADE) 
    project = models.ForeignKey(Project, on_delete=models.CASCADE) 
    role = models.CharField(max_length=20, choices=ROLE_CHOICES) 

ROLE_CHOICES = (
    ('1', _('Manager')), 
    ('2', _('Developer')), 
    ('3', _('Business Analyst')), 
    ('4', _('System Analyst')), 
) 

テンプレート

{% for member in project.member_set.all %} 
    <tr> 
     <td class="text-center">{{ member.user }}</td> <-- Example: Mark 
     <td class="text-center">{{ member.role }}</td> <-- Example: 3 but I need Business Analyst 
    </tr> 
{% endfor %} 

答えて

5

あなたはより多くのget_FOO_display上で読むことができます。

<td class="text-center">{{ member.get_role_display }}</td> 
+0

これは私が探していたものです。このリンクをありがとう。 –

関連する問題