проблемы с web.py и JavaScript - PullRequest
       10

проблемы с web.py и JavaScript

0 голосов
/ 24 ноября 2011

Я пытался создать страницу, сочетающую в себе web.py и JavaScript, и со следующим кодом:

$code: 
     def getContents(fname): 
          a = req.get(fname) 
          return a.content 

<script type="text/javascript"> 
     document.write("$getContents('http://mysite.net')"); 
</script> 

Здесь req передается функции $def with() моего шаблона, являющейся объектом модуля модуля запросов Python , из которого я выполняю методы.)

Проблема в том, что документ пуст, что означает, что функция document.write не получила ввода. Это можно обойти? Я делаю это неправильно?

РЕДАКТИРОВАТЬ : Выход функции не пуст; если вы используете простой HTML для печати, он будет работать.

Заранее спасибо.

(Я также разместил этот вопрос в web.py группе Google , пока не получил ответа.)

Ответы [ 2 ]

1 голос
/ 24 ноября 2011

Вы можете включить кодировщик json в глобальных шаблонах и использовать его в своем коде JavaScript.

import json
template_globals = {"json_encode": json.dumps}
render = web.template.render(config.template_dir, globals=template_globals, base="layout")

Тогда в вашем шаблоне

<script>
var obj = $:json_encode({"html": getContents('http://mysite.net')});
document.write(obj.html);
</script>
0 голосов
/ 24 ноября 2011

Возможно, у вас есть кавычки в отображаемом контенте, и это делает недействительным javascript.

...