0
私はJinjaに2つの引数を必要とするカスタムフィルタを持っています。私はJinjaテンプレートの中で関数を呼び出していますが、位置引数についてはTypeErrorを取得しています。私の関数が取ることをここ 位置の引数エラーを与えるJinja2カスタム関数
は、機能コード# Get the total balance of a student to display for an instructor
def get_stud_balance(inst_id, stud_id):
balance = 0
stud_balance = Packages.query.filter(Packages.inst_id == inst_id, Packages.stud_id == stud_id).all()
for row in stud_balance:
balance += row.balance
return balance
これは、それが登録されているか..です
app.jinja_env.filters['get_balance'] = filters.get_stud_balance
これはどのようである(正しい)が、3が与えられたことを(間違って)2であります私はそれを電話しようとしています..
{% for row in studs %} <!-- START for loop -->
<div class="col-md-4">
<div class="panel panel-default">
<div class="panel-heading"><center>{{ row.first_name }} {{ row.last_name }}</center></div>
<div class="panel-body">
<li>Cell Phone: {{ row.cell|phone }}</li>
<li>Home Phone: {{ row.home|phone }}</li>
<li>Email: {{ row.email }} </li>
<li>Birthday: {{ row.birthday|date }}</li>
<li>Gender: {{ row.gender|gender }}</li>
<li>Balance: {{ balance|get_balance(row.inst_id, row.stud_id) }}</li>
</div>
</div>
</div>
{% endfor %} <!-- /END for loop -->
私はここで何が欠けていますか?私はファイルから実行するだけで、テンプレートをロードするときには問題なく関数を実行できます。
これはそれを修正したであろう、 '