2012-04-27 2 views
0

У меня есть объект «компания». Когда я использую компанию внутри html, она работает нормально. Но когда я попытался использовать этот объект внутри javascript, я получаю сообщение «Uncaught SyntaxError: Unexpected token &».Как использовать python с javascript?

То, что я пытаюсь сделать, это получить объекты из db, а затем отобразить их на странице html, а затем изменить некоторые divs с помощью js.

URL-адрес:

('^all_companies$', 'companies.views.all_companies') 

вид:

def all_companies(request): 
    companies = Company.objects.all().order_by('id')[:5]; 
    return direct_to_template(request, 'all_companies.html', {'companies': companies}); 

HTML-:

{% block sidebar %} 
    <div id="sidebar"> 
     <!-- like google maps, short list of company info --> 
     <ul> 
      {% for comp in companies %} 
       <li>{{ comp }}</li>     
      {% endfor %} 
     </ul> 
    </div> 
{% endblock %} 

в ЯШ:

var tmp = {{ companies }} 
+0

Что оценивает '{{company}}'? Javascript, похоже, не похож на этот синтаксис. – gcochard

+0

Вы должны преобразовать 'компании' в JSON - только тогда JS сможет его прочитать – hamczu

+0

@Greg компании - это модельный объект, который я получаю от db .. – iCodeLikeImDrunk

ответ

2

Вы можете добавить шаблон фильтра, как этот один: http://djangosnippets.org/snippets/201/

и использовать

{{ companies | jsonify }} 

, но я не уверен, что это хорошая идея, чтобы сделать это непосредственно на объект БД, то это будет лучше карту вам нужна простая карта свойств

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