我接受python文件中的记录集,并使用for循环在flask jinja模板中显示记录。对于编辑按钮,我需要对ID进行加密。如何在模板中调用加密功能?
<tbody>
{% for record in records %}
<tr>
<td>{{ loop.index }}</td>
<td>{{ record[1] }}</td>
<td>{{ record[2] }}</td>
<td>
<a href="{{url_for('edit_country' ,id=record[0])|encryptdata}}" class="label bg-green" >Edit</a> |
<a href="{{url_for('view_country',id=record[0])}}" class="label bg-red" onclick="return confirm('Are you sure you want to Delete?');" >Delete</a>
</td>
</tr>
{% endfor %}
最佳答案
通常,将加密功能注册为过滤器
from jinja2 import Environment
def encryptdata(data):
return data.upper()
env = Environment()
env.filters['encryptdata'] = encryptdata
由于您使用的是烧瓶,因此您只需使用app.template_filter装饰过滤器
@app.template_filter('encryptdata')
def encryptdata(data):
return data.upper()
filters的烧瓶文档。
关于templates - 如何在flask jinja2模板中加密ID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57933560/