0

私はdjango/pythonを学ぼうとしており、jsonデータを読み取る方法を理解しようとしています...

私は次のようなものを持っています:

{
  region: {
    span: {
       latitude_delta: 0.08762885999999526,
       longitude_delta: 0.044015180000002374
    },
    center: {
       latitude: 37.760948299999995,
       longitude: -122.4174594
    }
  },...
}

HTML ページで特定のデータを読み込もうとしています。現在、この json データは html ページに表示されています。

this json のソースは次のとおりです。

return HttpResponse(json.dumps(response),mimetype="application/json")

特定のデータを取得する django/python の規則を理解しようとしていますか? for each ループを実行する必要がありますか? 私は独学で php を学んだ経験があり、python/django を独学で学ぼうとしています。

ありがとうございました

編集:

これは、返される HttpResponse の前に、view.py にもあります。

    try:
        conn = urllib2.urlopen(signed_url, None)
        try:
            response = json.loads(conn.read())
        finally:
            conn.close()
    except urllib2.HTTPError, error:
        response = json.loads(error.read())
4

3 に答える 3

1

これはhtmlでjsonを読む最も簡単な方法です(Djangoで送信)

def sendJson(request):
    if request.method == 'GET':
        context = {"name":"Json Sample Data"}
        return render_to_response('name.html',context)        

Django テンプレート Html コード

<div class="col-md-9 center">
    <span class="top-text">{{name}}</span>
</div>

今あなたによると:

 def sendJson(request):
    if request.method == 'GET':
        jsonData = {
          region: {
           span: {
            latitude_delta: 0.08762885999999526,
            longitude_delta: 0.044015180000002374
          },
          center: {
            latitude: 37.760948299999995,
            longitude: -122.4174594
          }
        }
       }
       data = json.dumps(jsonData)
       return HttpResponse(data, content_type="application/json")

jqueryを使用してこのデータを読み取ることもできます

json を作成して html で読み取る別の例

url.py

url(r'^anotherexample/$', 'views.anotherexample', name="anotherexample"),

view.py

 def anotherexample(request):
    if request.method == 'POST':
       _date = strftime("%c")
       response_data = {}
       response_data['status'] = 'taken'
       response_data['issueTakenTime'] = _date
       return HttpResponse(json.dumps(response_data), content_type="application/json")

HTMLビューとjquery

$.ajax({
    url: "/anotherexample/",
    // contentType: "application/json; charset=UTF-8",
    data: { csrfmiddlewaretoken: "{{ csrf_token }}",   // < here 
        status : "taken"
      },
    type: "POST",
    error: function(res) {
      console.log("errr", res)
    },
    success: function(res) {
      console.log("res", res)}
    })
于 2015-11-21T05:30:07.627 に答える
0

何を、どこで、どのようにループするかは明確ではありませんが、基本的なループは次のように機能します。

data = {"key1":[1,2], "key":[4,5]}
for key, values in data.iteritems():
    print key, values
于 2012-09-28T07:11:02.057 に答える
0

このリンクから解決策を見つけることができました: Decode json and Iterate through items in django template

それは私を助け、私と同じ問題を抱えている他の誰かを助けることを願っています.

ありがとう

于 2012-09-29T06:20:09.153 に答える