2016-03-24 6 views
1

Bir komut dosyasına bir JSON dosyası almayı deniyorum. Benim JSJSJ, Django ile JS: SyntaxError: eksik: property id

def graph(request, d):     #d.data is the file in the database 
    data = json.load(d.data) 
    return render(request, 'temp/template.html', {'json': data}) 

:

var j = {{ json|safe }}; 
ben şöyle sayfaya JSON verilerini döndüren bir görünüm oluşur, böylece dosya sistemi onu sunarak orada elde edebilmek için görünmüyor olabilir

{u'people': [{u'name': u'steve'}, {u'name': u'dave'}]} 

bir sorun olmamalı okuyun: Ben JS için kaynak baktığımızda

bu formatta verileri gösterir. 'Id' adı verilen herhangi bir değişkenim yok ve yine de başlıkta verilen JS satırını gösteren hatayı alıyorum.

Bu neden olabilir? Ayrıca betiğimde JSON’dan gelen nesneleri nasıl kullanırım? simplejson kullanarak çözüldü

+1

'u'name'' geçersiz. o olmadan olmalı. – jcubic

+0

Django bir unicode dizisi döndürdüğü için, geçerli JS'ye ayrıştırmanın ya da görünümün geri dönmesini sağlamanın herhangi bir yolunu biliyor musunuz? –

cevap

0

:

import simplejson as json 

Ve yukarıdaki gibi her şey. Bu json.dumps inşa gibi unicode dizisi döndürdüğü için geçerli:

{u'people': [{u'name': u'steve'}, {u'name': u'dave'}]} 

bir sorun olmamalı simplejson kullanarak. JS'de

+0

Gerçekten, hayır. Simplejson'un çıktısı json ile aynıdır, probleminiz aslında 'json.dumps() 'olarak adlandırmamış olmanızdır. –

+0

Xyz serileştirilemez gibi ne yazık ki çöplüklerle farklı hatalar yapıyordum –

İlgili konular