Django中是否有显示星号(*)而不是文本的过滤器

2024-07-07 06:40:54 发布

您现在位置:Python中文网/ 问答频道 /正文

我很想知道是否有任何过滤器可用于将所有文本显示为*像这样

mytext = 'raja'

{{ mytext|password }}应显示****

我们怎样才能做到这一点


Tags: 文本过滤器passwordrajamytext
2条回答

简单。这样做:

{% for char in mytext %}*{% endfor %}

也就是说,我可以问一下您在哪里显示密码吗?通常,密码不会显示在屏幕上。如果您想在表单中显示它,可以使用^{}小部件

正如@Ars所说,透露密码的长度是个坏主意。您可能希望显示随机数目的星号

这真的是密码吗?那么这似乎是一个坏主意,你想透露密码是4个字符长吗?只需在模板中直接打印4个(或5个或其他)星号即可

否则,我就不需要过滤器了。只需在上下文中输入一串星号:

mytext = 'raja'
ctx = Context({'mytext': '*' * len(mytext)})
t = Template('password: {{ mytext }}')
s = t.render(ctx)

相关问题 更多 >