次のような構造の Web アプリケーションがあります。
サーバーは Python で書かれています。約 100 の異なるテーブル (グリッド) と一致する JS ファイルを含む HTML ページをクライアントに提供します。すべてのグリッドは、それを初期化する JS コードを含む DIV です。
page.html:
<script type="text/javascript" src="static/assets/js/grid_type_1.js"></script>
<script type="text/javascript" src="static/assets/js/grid_type_2.js"></script>
<script type="text/javascript" src="static/assets/js/grid_type_3.js"></script>
<div id="grid_type_1" style="width: 100%; height: 200px;"></div>
<div id="grid_type_2" style="width: 100%; height: 200px;"></div>
<div id="grid_type_3" style="width: 100%; height: 200px;"></div>
grid_type_1.js:
$(function () {
w2utils.settings['dataType'] = 'JSON'
$('#grid_type_1').w2grid({
// configuration here
});
すべての JS ファイルは同じ UI フレームワーク (W2UI) を使用しますが、各グリッドの構成と構造は異なります。ページが読み込まれた後、各グリッドはサーバーに対して POST 要求を行い、そのグリッドにエントリを入力するために使用される JSON で応答します。
私はすでに Jinja2 を使用して HTML ファイルのテンプレートを作成しており、JS ファイルのコードの 80% は同じであるため、JS ファイルの 80% を複製するのではなく、JS ファイルも生成した方がよいのではないかと考えていました。グリッドコード 100 回。
この問題に対する実行可能なアプローチはありますか?