Django表单 - 在模板中渲染表单更改hiddenInput值

0 投票
1 回答
1320 浏览
提问于 2025-04-18 07:22

在我的 forms.py 文件中,我定义了一个叫 MyForm 的表单,并且使用了一个隐藏输入框,里面放了一个虚拟值。接下来,我想把这个表单渲染成数据库中用户的表单,并且把用户名作为隐藏输入框。

这是 Django 的模板:

{% for username,time in llistat_usuaris.items %}

{{ form.as_p }} # HOW CAN I SET {{USERNAME}} as hidden value ??

{% endfor %}    

1 个回答

0

你在找这个吗?

{{ form.field.as_hidden }}

“.as_hidden”这个功能可以让任何表单字段对用户不可见,但你仍然可以在提交时接收到这个字段,就像其他字段一样。

我通常会像创建普通字段那样创建一个字段,然后在模板中加上“as_hidden”,这样Django就不会在浏览器中显示这个字段了。

我建议你看看这些帖子:

Django模型中的隐藏字段

Django表单的隐藏模型字段

Django ModelForm中添加隐藏输入

不过,如果你想获取发帖用户的用户名,其实更简单,只需要访问request.user就可以了。

撰写回答