Genshi: TemplateSyntaxError: неправильно сформирован (неверный токен) с амперсандами в теге <script> - PullRequest
3 голосов
/ 04 августа 2010

Я использую Pylons / Genshi и пытаюсь отобразить «все последние комментарии» на моем сайте с помощью виджета Disqus javascript (Disqus установлен на сайте, и я могу оставлять комментарии в порядке).

Однако приведенный ниже код вызывает неприятную ошибку 500:

TemplateSyntaxError: неправильно сформирован (неверный токен): строка 25, столбец 121 (строка 25 - это<script> line).

  <div py:def="content">
   <div id="recentcomments" class="dsq-widget">
    <h2 class="dsq-widget-title">Recent Comments</h2>
    <script type="text/javascript"
    src="http://disqus.com/forums/wdmmg/recent_comments_widget.js 
    num_items=5&hide_avatars=0&avatar_size=32&excerpt_length=200"></script>
   </div>
  </div>

Странно, я думаю, что это может быть связано с символами & в запросе GET, потому что использование

    <script type="text/javascript"
    src="http://disqus.com/forums/wdmmg/recent_comments_widget.js
    ?num_items=5"></script> 

в том же самомЛиния работает отлично.Генши не любит & символов или что-то еще происходит?

Ответы [ 2 ]

3 голосов
/ 04 августа 2010

В XML вы должны кодировать свои амперсанды, поскольку они имеют особое значение.

Правильный способ использования их в URL-адресах recent_comments_widget.js?num_items=5&amp;hide_avatars=0&amp;avatar_size=32&amp;excerpt_length=200

1 голос
/ 04 августа 2010

В первом фрагменте у вас нет ? до num_items, а во втором -. Попробуйте добавить его к первому и проверьте, работает ли он.

...