Stop polling. Use SocketIO!

This commit is contained in:
Patrick Jentsch
2019-08-23 15:05:01 +02:00
parent 3d8b8e9182
commit 7aef3de81d
12 changed files with 58 additions and 5120 deletions

View File

@ -1,10 +1,12 @@
from flask import (abort, current_app, flash, redirect, request,
render_template, url_for, send_from_directory)
from flask_login import current_user, login_required
from flask_socketio import emit
from . import main
from .forms import CreateCorpusForm
from .. import db, socketio
from ..models import Corpus
import json
import os
@ -19,6 +21,21 @@ def handle_message(message):
print('received message: ' + str(message))
@socketio.on('connect')
@login_required
def connect():
corpora = []
jobs = []
for corpus in current_user.corpora:
corpora.append(corpus.to_dict())
for job in current_user.jobs:
jobs.append(job.to_dict())
emit('corpora', {'data': json.dumps(corpora)})
emit('jobs', {'data': json.dumps(jobs)})
@main.route('/corpora/<int:corpus_id>')
@login_required
def corpus(corpus_id):