インタラクティブに生成されたhtmlファイルをFlaskで表示させようとしたところブラウザがキャッシュファイルを読みに行ってしまって、作り変えた結果が表示されない。
data = dir + "/data_" + datetime.datetime.now().strftime('%y%m%d%H%M%S') + ".html" output_file(data)
そこでとりあえずhtmlを書き換えたら、毎回違う名前で保存し直して、読み込む側もそれを指定して読み込むようにする。
@app.route('/clustalw/bokeh/') def clustalw_bokeh_index(): user = g.user.name target = "./user/" + user + "/clustalw/*.html" file = glob.glob(target)[0] if os.path.exists(file): return render_template(file)
こんな感じでタイムスタンプをファイル名に入れておき、ターゲットのファイル名を読み取ってそれをrender_templateで受け渡す。