ビューから渡される変数値に応じて、継承されたテンプレートにそれらの1つを表示するn個のdefブロックが継承されたテンプレートにあります。
現在、ビューファイルで計算を行ってから、表示するdefを決定し、これをキー値として他の表示データとともに継承テンプレートに渡します。ここで、if-elif-endif
節evaluateを使用します。このキーの値を使用して、表示するdefを確認し、そのdefを手動で呼び出します。**${self.val_of_key_nn()}**
このif-elif-endifbockを取り除きself.def_to_call()
、ビューから直接テンプレートにコマンドを渡す方法があるかどうか知りたいですか?
サンプルコード:
#defs is a key in the passed-dictionary.
#I want to reduce this block to a single-line code
% if defs == '1':
${self.block_1()}
% elif defs == '2':
${self.block_2()}
% else:
${self.block_default()}
% endif
ありがとうございました。