from flask import *
from redmine import Redmine
import sys
app = Flask(__name__)
REDMINE_KEY='sdfsdfsdfsdfsd'
REDMINE_URL='http://blabla/redmine'
redmine = Redmine(REDMINE_URL)
redmine = Redmine(REDMINE_URL, key=REDMINE_KEY)
neu = []
bearbeitung = []
erledigt = []
id_thema = ""
thema = ""
project = ""
zugewiesen = ""
def ticket_zugewiesen(diesTicket):
alleticket = redmine.issue.get(diesTicket)
try:
alleticket.assigned_to
except:
return True
def ticket_infos(diesTicket):
alleticket = redmine.issue.get(diesTicket)
try:
id_thema = alleticket.id
thema = alleticket.subject
project = alleticket.project.name
zugewiesen = alleticket.assigned_to
except:
id_thema = alleticket.id
thema = alleticket.subject
project = alleticket.project.name
return
neueIssues = redmine.issue.filter(status_id='1')
for i in neueIssues:
neu.append(i.id)
neueIssues = redmine.issue.filter(status_id='2')
for i in neueIssues:
bearbeitung.append(i.id)
neueIssues = redmine.issue.filter(status_id='5')
for i in neueIssues:
erledigt.append(i.id)
@app.route('/_sendinfo')
def info():
return jsonify(result=id_thema,thema=thema, project=project, zugewiesen=zugewiesen)
@app.route('/')
def home():
while True:
neu2 = []
bearbeitung2 = []
erledigt2 = []
neueIssues = redmine.issue.filter(status_id='1')
for neues in neueIssues:
neu2.append(neues.id)
neueIssues = redmine.issue.filter(status_id='2')
for bearbeitetes in neueIssues:
bearbeitung2.append(bearbeitetes.id)
neueIssues = redmine.issue.filter(status_id='5')
for erledigtes in neueIssues:
erledigt2.append(erledigtes.id)
for i in neu2:
if i not in neu:
janein = ticket_zugewiesen(i)
if janein is True:
l = ticket_infos(i)
else:
pass
neu = neu2
for ii in bearbeitung2:
if ii not in bearbeitung:
if ii in erledigt:
l = ticket_infos(ii)
erledigt = erledigt2
bearbeitung = bearbeitung2
for iii in erledigt2:
if iii not in erledigt:
l = ticket_infos(iii)
erledigt = erledigt2
return render_template("index.html")
if __name__ == '__main__':
app.run()
Как я могу сделать эту бесконечную петлю в home()
работе в колбе? Теперь это не сработает. Или есть лучший способ получить данные от redmine?Как сделать бесконечную петлю в колбе
Я проверю каждый раунд, что бесконечный цикл сделает, если три списка neu2, bearbeitung2, erledigt2 равны neu, bearbeitung, erledigt. И если в «list2» есть еще число, я буду динамически отображать некоторую информацию о интерфейсе (браузере).
Да, это правильно! Я отправлю обновления на Веб-сайт. Итак, как я могу опросить AJAX? Я понятия не имею, как я могу это сделать. Можете ли вы дать мне простой пример? – Samhamsam
Вам нужно будет сделать это с помощью JavaScript. Я не думаю, что объяснение AJAX в комментарии SO имеет смысл. Google вокруг. Я также отредактировал свой ответ для SSE. Вы можете попробовать их, вопрос, который я связал, имеет полный пример. – ralh
Хорошо, спасибо. Я попробую События, отправленные сервером. Мне кажется легким. Посмотрим. – Samhamsam