1

2つのforループを同時に実行する必要があるテンプレートがあります。例えば:

#pseudocode
{% for x in one%} and {% for y in two %}
 {{x}}, {{y}}
{% endfor %}

PS:上記のコードは疑似です。私はそれを行うためのパッケージ、すなわちDjnago-multiforloopも見つけました

それを行う他の方法はありますか?

更新しました!

objects私は次のようなPythonで名前が付けられた辞書を持っています:

{<User: x>: True, <User: y>: False}

今、私はこれらの値を私のDjangoテンプレートコードで使用したいと思います:

 {% for share_user in objects %} and {% for key, value in objects.iteritems %}
    <tr>
        <td>{{ share_user }}</td> 
        <td><a href="{% url share_edit type type.pk share_user.id %}">{{ value}}</a></td>
    </tr>   
{% endfor %}

for loop テンプレートの以下のコードが正常に機能するように、2つをマージしたいと思います。

必要な出力:最初の反復の場合:

x
True

2回目の反復の場合:

Y
False

私のviews.pyで:

 permission_obj = somemodels.objects.filter(object_id=object_id)
 for perm in permission_obj:
    s_user.append(perm.user)
    s_edit.append(perm.edit)
 objects = dict(zip(s_user,s_edit))
 extra_context = {
   'objects' : objects
    }
4

3 に答える 3

1

2次のようなことができるのはあなただけです:

{% for x, y in one_and_two %}
   {{x}}, {{y}}
{% endfor %}

1 が [1, 2, 3] で 2 が [4, 5, 6] の場合

one_and_two は [(1, 4), (2, 5), (3, 6)] です

于 2012-06-26T11:48:28.877 に答える
0

問題のアップデートによると。

view.py

permission_obj = somemodels.objects.filter(object_id=object_id)
objects = []

for perm in permission_obj:
   objects.append({'user':perm.user,'edit':perm.edit})

 extra_context = {
   'objects' : objects
    }

template.html

{% for obj in objects %}
    <tr>
        <td>{{ obj.user }}</td> 
        <td><a href="{% url share_edit type type.pk obj.user.id %}">{{ obj.edit }}</a></td>
    </tr>   
{% endfor %}
于 2012-06-26T13:50:12.027 に答える