0

この形式でディクショナリを正常に返す外部データ ソースへの呼び出しがあります。エントリはいくつでも存在できます。

    {
'0090000': {'status': 'some status', 'modified_date': '2013-08-09T14:23:32Z', 'modified_by': 'John Doe', 'severity': '3 (Normal)', 'created_by': 'Dan Smith', 'summary': "some status", 'created_date': '2013-07-18T21:10:36Z'},
'0060000': {'status': 'some status', 'modified_date': '2013-06-24T03:19:01Z', 'modified_by': 'Jay Johnson', 'severity': '4 (Low)', 'created_by': 'Tony Thompson', 'summary': "some other status", 'created_date': '2012-05-03T17:45:19Z'}...
}

フォームに収集されたいくつかの情報を使用して、このデータの終わりを引き出しています。これを反復してテンプレートにデータを表示する方法のドキュメントと例をたくさん読んだことがありますが、うまく機能させることはできません。

私の見解は次のとおりです。

def agenda_detail(request, agenda_id):

    #get the meeting data
    a_data = get_object_or_404(meetingEvent, pk=agenda_id)

    #get the DEE data for the VAT fieldset
    account_id = a_data.account_number.pk

    #get the stored session user/pass
    username = request.session['username']
    password = request.session['password']

    dee_data = onsiteEngineer.objects.filter(account=account_id)

    #now we get the case data from the Portal API
    portal_raw = CustomerInformation()
    customer_data = portal_raw.getOpenCaseInfo(account_id,username,password)

    return render_to_response('agendas/detail.html',{'a_data':a_data, 'dee_data': dee_data, 'customer_data': customer_data.iteritems()}, context_instance=RequestContext(request))

これを扱う私のテンプレートコードは次のとおりです(現在、htmlのフォーマットは気にしません。画面にデータを表示したいだけです:

{% for key, value in customer_data.items %}
<p>{{ key }}</p>
{% for info in value %}
    {{ value }}
{% endfor %}
{% endfor %}

データが表示されていません。複数の組み合わせ (.items の使用、iteritem の使用など) を試しましたが、うまく動作しません。

すべてのアドバイスに感謝します。

4

1 に答える 1

1

は辞書なので、コンテキストの代わりにcustomer_data送信できます。'customer_data': customer_data'customer_data': customer_data.iteritems()

テンプレートで、これを試してください:

{% for key, value in customer_data.items %}
    <p>{{ key }}</p>
    {% for k, v in value.items %}
        {{ k }}: {{ v }} <br/>
    {% endfor %}
{% endfor %}
于 2013-09-15T02:03:02.577 に答える