Рендеринг телефонных номеров в flask jinja2 urlize filter

При использовании фильтра 'urlize' в jinja2 в шаблонах flask, каждая текстовая ссылка сайта становится кликабельной. Но я не могу заставить телефонные номера превращаться

<a href='tel:+966850766817'> "phone number" <a/>

но они не отображаются таким образом. есть идеи?

По умолчанию фильтр |urlize распознает http://, https://, www., mailto: и большинство адресов электронной почты. Вы можете указать ему распознавать другие схемы с помощью параметра extra_schemes. В docs описано поведение по умолчанию и доступные параметры.

{{ user_info|urlize(extra_schemes=["tel:"]) }}

Параметр extra_schemes может быть использован для включения дополнительных схем на каждый вызов. Чтобы изменить дополнительные схемы по умолчанию, установите env.policies["urlize.extra_schemes"] в окружении Jinja. В Flask среда Jinja - это app.jinja_env.

app = Flask(__name__)
app.jinja_env.policies["urlize.extra_schemes"] = ["tel:"]
Вернуться на верх