quote_plus URL-在 Jinja2 中编码过滤器
quote_plus URL-encode filter in Jinja2
Jinja 中有一个 urlencode
过滤器,可以与 {{ url | urlencode }}
一起使用,但我正在寻找 "plus" 版本,用 +
替换空格而不是 %20
,例如 urllib.quote_plus()
。有现成的东西吗?是时候自定义过滤器了吗?
不,Jinja2 没有像 quote_plus
这样的内置方法;您将需要创建自定义过滤器。
Python
from flask import Flask
# for python2 use 'from urllib import quote_plus' instead
from urllib.parse import quote_plus
app = Flask('my_app')
app.jinja_env.filters['quote_plus'] = lambda u: quote_plus(u)
HTML
<html>
{% set url = ' %}
{{ url|quote_plus }}
</html>
Jinja 中有一个 urlencode
过滤器,可以与 {{ url | urlencode }}
一起使用,但我正在寻找 "plus" 版本,用 +
替换空格而不是 %20
,例如 urllib.quote_plus()
。有现成的东西吗?是时候自定义过滤器了吗?
不,Jinja2 没有像 quote_plus
这样的内置方法;您将需要创建自定义过滤器。
Python
from flask import Flask
# for python2 use 'from urllib import quote_plus' instead
from urllib.parse import quote_plus
app = Flask('my_app')
app.jinja_env.filters['quote_plus'] = lambda u: quote_plus(u)
HTML
<html>
{% set url = ' %}
{{ url|quote_plus }}
</html>