Carga de desplazamiento de estilo de Twitter para una página de stream_with_context del matraz

Tengo una página de búsqueda que buscará a través de un archivo estático y recostackrá información para lanzar en una página principal. Lo siguiente es cómo administro el algoritmo que crea la búsqueda.

@search.route('/') def properties_search(): if len(request.args) > 0: d = CSVReader() row_count = len(list(search_csv(d, request.args))) gen = stream_with_context(search_csv(d, request.args)) return Response( stream_with_context( stream_template( 'advanced_search/results.html', rows=gen ) ) ) return render_template('advanced_search/advanced.html') def search_csv(rows, form): for row in rows: if satisfies_all_requirements(row, form): yield row 

Sin embargo, cuando esto llegue a la página, continuará mostrando todos los resultados sin detenerse.

 
{% for each in rows %} {# blah blah some html goes here, you get the point #} {% endfor %}

¿Cómo se podría habilitar el desplazamiento infinito en esta plantilla para que no se muestren todos los resultados en el primer golpe?

Este es un concepto separado de la transmisión de su respuesta. En su lugar, cree una ruta que devuelva otra porción de datos, tal vez en formato JSON, y use JavaScript en el lado del cliente para llamar a esta ruta cuando la página se desplace hacia la parte inferior e inserte los datos de manera adecuada.

 @app.route('/') def index(): # this page just loads the start page containing the javascript that will load more results # you could pre-load the first set of data so the page renders something at first data = get_some_data() return render_template('index.html', data=data) @app.route('/more') def more(): # this route will only be called from JavaScript when the page is scrolled # read query parameters to know what data to get page = request.args.get('page', 1) per_page = request.args.get('per_page', 20) # get the requested set of data data = get_some_data(page, per_page) # return it as json return jsonify(data=format_data_appropriate_for_jsonify(data))