0
私のDjangoのモデルでは、私は今、私はそれがjinja2 docsJinja2ののGROUPBYの選択フィールド
<ul>
{% for group in persons|groupby('group') %}
<li>{{ group.grouper }}<ul>
{% for person in group.list %}
<li>{{ person.first_name }} {{ person.last_name }}</li>
{% endfor %}</ul></li>
{% endfor %}
</ul>
しかし{{ group.grouper }}
文字列であるに説明するように、私のクエリセットを表示するには、groupby
フィルタを使用して選択フィールド
MY_GROUPS = [
('GR1', 'First Group'),
('GR2', 'Second Group)
]
class MyModel(models.Model):
...
group = models.CharField(choices=MY_GROUPS, max_length=3)
を持っていますフィールド値:GR1
、GR2
です。どのように私はハタ文字列として私のフィールドの表示名を取得できます。
<li>{{ group.grouper.get_group_display }}<li>
注:テンプレートでは、あなたがいないあなたがget_FOO_display()
メソッドを使用することができますまずグループ、第二グループ
いいえそのような要素はありません:strオブジェクト['get_group_display']}} 'grouperは文字列なので – Goran
@Goran' group.get_group_display'だけを試してください。 – wencakisa
グループはタプルであり、( 'str'、[オブジェクトのリスト])を含みます。group.grouperは最初のタプル要素であり、group.listはsecondです。そのようにすることはできません。これが私が助けを求める理由です。私の意見では、フィルター引数 'groupby( 'group')'に新しいフィルターを書くかどうかの答えがあります。しかし、誰かが解決策を知っていることを願っていました。 – Goran