2013-12-05 2 views
3

В Django у меня есть представление, которое запрашивает канал JSON и отображает ответ вместе с шаблоном. Мне нужно преобразовать объект JSON в объект Javascript JSON. Я сумел console.log объект JSON в моем шаблоне, но что-то не так с форматом.Как избавиться от «quot» в Python json.dumps

Это то, что я ожидал:

{"lat": 58.548703, "referenceTime": "2013-12-05T07:00:00Z", "lon": 16.155116... 

и это то, что я получаю:

{"lat": 58.548703, "referenceTime": "2013-12-05T07:00:00Z", "lon": 16.155116... 

Вот мое мнение:

def myView(request): 
    request = Request('http://somedomain/somefeed.json') 

    response = urlopen(request) 
    data = json.load(response) 
    return render_to_response('myTemplate.html', {'myJson': json.dumps(data)}) 

И в моем шаблоне:

console.log('{{myJson}}'); 
+0

Так может быть, вы должны показать шаблон? –

+0

Кроме того, почему бы вам побеспокоить десериализацию от JSON только для сериализации его снова сразу? В чем смысл? –

+4

use '{{myJson | safe}}' – Armance

ответ

12

Как говорит Арманс в комментариях, вам необходимо пометить переменную как безопасные в шаблоне так что не ускользнуло:

{{ myJson|safe }} 
+0

Отлично! Это решило проблему. Для будущей ссылки это то, что я должен был сделать в своем Javscript: 'console.log (JSON.parse ('{{myJson | safe}}));' –

+0

Да, потому что фильтр для безопасного использования используется для рендеринга Теги html в шаблонах django – Nilesh

Смежные вопросы