2016-04-29 17 views
0

Ich habe 2 Tisch in meinem Django, wo man ManyToMany von einem anderen ist, wie unten:Django ManyToMany Daten Bevölkerung auf der Website

TABLE1   TABLE2   TABLE_3 
ID Item1  ID Item2  ID  TABLE1_ID  TABLE2_ID 
1  a   1  o   1  1    2 
2  b   2  p   2  2    3 
3  c   3  q   3  3    1 

Jetzt habe ich versuchen, eine Tabelle zu drucken, wie unter meinem Index:

Item1  Item2 
a   p 
b   q 
c   o 

Ich frage mich, wie kann ich es funktionieren lassen? Ich stecke hier für einige Zeit fest ... bitte helfen.

Ich versuche, 2 Listendaten zu verwenden, wie:

TABLE1_List = TABLE1.objects.all() 
TABLE2_List = TABLE2.objects.all() 

in meiner Vorlagendatei, versuche ich zu nutzen:

<table> 
{% for t1 in TABLE1_List %} 
    <tr> 
     <td>{{t1.Item1}}</td> 
    </tr> 
{% endfor %} 
</table> 
<table> 
{% for t2 in TABLE2_List %} 
    <tr> 
     <td>{{t2.Item2}}</td> 
    </tr> 
{% endfor %} 
</table> 

Diese 2-Tabelle für mich zurück, aber wie kann ich mitmachen sie in einen Tisch? Bitte freundlich helfen! Vielen Dank!

Antwort

0

Nur meine Lösung hier zu posten: Ich habe Set 2 Liste als Tupel Liste in Ansichten wie folgt:

TABLE=list(zip(T1,T2)) 

und verwenden Sie die folgende Kälte in Vorlagen:

{% for t1,t2 in TABLE %} 
    <tr> 
      <td>t1.item1</td> 
      <td>t2.item2</td> 
    </tr> 
{% endfor %} 

Danke.

0

Wenn Sie die gleiche Anzahl von Elementen in beiden Spalten haben, kann so etwas funktionieren. (Nicht getestet)

<table> 
{% for t1 in TABLE1_List %} 
{% for t2 in TABLE2_List %} 
    <tr> 
     <td>{{t1.Item1}}</td> 
     <td>{{t2.Item2}}</td> 
    </tr> 
{% endfor %} 
{% endfor %}  
</table> 

Edit: nachdem darüber nachzudenken, ich glaube, Sie würden man zwei Tabellen besser nebeneinander. Oder nur DIV-Tags usw.

+0

Das ist nicht wrok ... es wird 3 * 3 Zeilen generieren ... die For-Schleife ist nicht parallel. Können wir anders machen? Danke vielmals! –

+0

Nur um meine Lösung hier zu posten: Ich habe 2 Liste als Tupel-Liste in Sichten festgelegt, und verwende die folgende Cold in Vorlagen: {% für t1, t2 in TABLE%}. Vielen Dank für die Inspiration. –