У меня есть сценарий, который использует CherryPy. Сценарий работает хорошо, и HTML-страница в порядке. На странице HTML я показываю содержимое одного списка (это только упражнение для обучения). Даже это работает, но если я попытаюсь поместить фоновый цвет на основе значений в списке, начнется проблема!Cherrypy issue on update list
class HelloWorld(object):
@cherrypy.expose
def index(self):
for i in range(0, len(li)):
status_bkg[i]=color_status(li)
состояние цвет немного функция возврата «зеленый», если Ли [я] == 1 «красный», если 0. Тогда я посылаю эти два списка HTML файл следующим образом:
template = loader.load('index.html')
title = "Exerc 2"
ctx = Context(title=title, li=li, status=bkg=status_bkg)
return template.generate(ctx).render('html', doctype='html')
Теперь HTML-файл имеет такую структуру:
...
<tr py:for="i in len(li)">
<td class="${status_bkg[i]}">${li[i]}</td>
<tr>
два класса «зеленый» и «красный» оК. Первый раз все отлично. Но когда скрипт python начинает добавлять время от времени случайным образом 0 или 1 к списку, проблема повышается! Два списка имеют одинаковую длину, но обновляется только «li», а не статус_bkg!
Где я ошибаюсь? Скажите, если вам нужно больше кода, я понимаю, что немного упростил.
Спасибо!
'status_bkg [i] = color_status (li)' кажется неправильным - для каждого элемента 'color_status' вызывается весь список. – jwalker
Если вы действительно хотите получить ответ на сайте, вам нужно приложить некоторые усилия, написав ваши вопросы и сделав их понятными. Вы не указали название используемого вами шаблона, как в тексте, так и в тегах, и это около полутора десятков активно используемых там. Неверный тэг '' list'', который вы видите, зависающий. Ваш отпечаток фрагмента Python нарушен. Поэтому теперь тот, кто хочет помочь вам, может потребоваться больше времени, чтобы расшифровать ваш вопрос, а не отвечать на него. – saaj