2013-03-28 2 views
3

내가 파이썬에 새로 온 사람과 내 모든 JSON 데이터 U와 결합 된 것 같다의 뿅':이 데이터를 필요가 없습니다제거 유와 같은 접두사 '내 JSON 데이터

{u'number': u'12345666', u"items"...} 

을 (유니 코드 나는 자바 스크립트 변수에 문자열를 인쇄 할 또는 무엇이든) :

var obj = data; // data is the object above. 

내 파이썬은 다음과 같은 형태;

index.html: 
var obj = ${data}; 

저는 템플리트 작성에 moko 프레임 워크를 사용하고 있습니다.

// getitems() return {'number':'12312...} 
context = {'data': getitems(self)} 
self.render_response('index.html',**context) 

처리 된 자바 스크립트 출력 데이터는 다음과 같다 : 이것은 내 문제입니다

var obj = {u'number': u'12345666', u"items"...} 

.

+6

당신은 사전 인쇄와 JSON을 혼동하고 있습니다. – freakish

+3

'u ''를 제거하고 싶지는 않습니다. 이것은 유니 코드 문자열을보고 있다는 것입니다. JSON *을 먼저 인코딩하면 템플릿 코드가 JSON을 처리합니다. –

+2

+1 : 왜이 ​​질문에 왜 많은 downvotes가 있는지 모르겠습니까? – freakish

답변

7

문제는 사전을 문자열로 변환한다는 것입니다 (아마도 Mako는 str(...)을 대신합니다). 하지만에게 그것을 jsonify 한다, 즉

import json 
context = { 'data': json.dumps(getitems(self)) } 
+0

고맙습니다,이 사이트에 당신을 필요로하는 사람이 필요합니다. – Kivylius

+0

깨끗한 자바 스크립트 솔루션이 있습니까? 동일한 문제가 있지만 외부 API를 사용하여 데이터를 가져옵니다. 나는 자바 스크립트 프론트 엔드에서 이것을 해결할 필요가 있으므로 코드에 접근 할 수 없다. – FrancisA

+0

@FrancisA 아니요, 파이썬 파서 또는 적어도 일부는 필요합니다. JS AFAIK에는 그런 도구가 없습니다. – freakish