2016-11-18 4 views
0

私は次のモデルがあります:Djangoのテンプレートデータ

class Contactnumber(TimeStampedModel): 
    phone_number = models.CharField(max_length=100, unique=True) 
    contact = models.ForeignKey(‘contacts.Contact') 

class Contact(TimeStampedModel): 
     contact = models.CharField(max_length=100, db_index=True, 
           verbose_name='Contact Name') 
     practice = models.ManyToManyField(‘practice.Practice’, 
             related_name=“contacts",) 



class Practice(TimeStampedModel): 
     practice = models.CharField(max_length=150, db_index=True, 
           verbose_name='Practice Name') 

私は次のように表示したいしたデータテーブルを含むテンプレートがあります。 実践、連絡先、連絡先電話

以下は私を与えます練習のための連絡先:

{% for contact in practice.contacts.all %} 
    {{ contact }} 
    {% endfor %} 

私の質問は少し失われているように連絡先電話番号を含める方法です。 ご協力いただければ幸いです。これが簡単な質問であれば謝罪してください!連絡先は、複数の電話番号を持つことができます

答えて

2

ATM、その一つの方法は、このようにそれを行うには、次のようになります。

{% for contact in practice.contacts.all %} 
    {% for number in contact.contactnumber_set.all %} 
     {{ number.phone_number }} 
    {% endfor %} 
{% endfor %} 

これをbehingロジックがある、あなたは関係フィールドにrelated_nameを設定していないとき( one2one、FK、M2M)の場合、モデルの名前で関連モデルにアクセスし、最後に "_set"を追加することができます。だからあなたはすべての連絡先と連絡先が持っているすべての番号を繰り返し、出力はその人のためのすべての数字になります。自由にフォーマットすることができます(コンマを追加すると、<br>のようになります)。

関連する問題