如何在Dojo中使用Django for template标签?

时间:2013-08-05 15:36:06

标签: django django-templates dojo dojox.grid.datagrid

我正在尝试在我的javascript中使用“for”Django模板标记。我使用Dojo的DataGrid来创建项目列表。这是我的代码:

<script type="text/javascript">
    require(['dojox/grid/DataGrid' , 'dojo/data/ItemFileWriteStore' , 'dojo/dom' , 'dojo/domReady!'],
      function(DataGrid, ItemFileWriteStore, dom){
        /*set up data store*/
        var data = {
          identifier: "id",
          items: []
        };

        {% for item in items_list %}
            data.items.push({ id: {{ item.url }} + '_' + {{ item.id }}, col1: {{ item.description }} });
        {% endfor %}

        var store = new ItemFileWriteStore({data: data});

        /*set up layout*/
        var layout = [[
            {'name': 'Description', 'field': 'id', 'width': '100px'}
        ]];

        /*create a new grid*/
        var grid = new DataGrid({
            id: 'grid',
            store: store,
            structure: layout,
            rowSelector: '20px'
        }, "grid");

        /*Call startup() to render the grid*/
        grid.startup();
    });
</script>

但是,当我访问我的网页时,我收到此错误:

Uncaught SyntaxError: Unexpected identifier

我做错了什么,我该如何解决?谢谢!

1 个答案:

答案 0 :(得分:0)

您需要在词典中的值周围添加引号

data.items.push({ id: '{{ item.url }}_{{ item.id }}', col1: '{{ item.description }}' });