gpt4 book ai didi

python - 如何在 Django 模板中设置动态默认文本区域数据?

转载 作者:太空宇宙 更新时间:2023-11-04 01:10:50 24 4
gpt4 key购买 nike

我正在设计一个联系表单,我希望在某些情况下(并非总是)使用 URL 中的数据预填充主题和内容字段。

这就是为什么我的 View 看起来像这样:

def contact(request):
if request.method == 'POST':
contact_form = ContactForm(request.POST)
# Some more logic here

else: # GET request
contact_form = ContactForm()
subject = request.GET.get('subject') or ""
content = request.GET.get('content') or ""

return render(request, 'contact.html', locals())

我创建了一个 addattrs 自定义过滤器,允许我在 HTML 元素中注入(inject) HTML 属性。

因此,为了预填充主题(经典文本输入),我这样做了,并且有效:

{% with "value="|add:subject as attrs %}
{{ contact_form.subject|addattrs:attrs }}
{% endwith %}

现在,我想对文本区域做同样的事情。但是 textarea 默认值不是通过填充 HTML value 属性来设置的,它们是这样填充的:

<textarea>default texte here</textarea>

我该怎么办?谢谢!

最佳答案

您无需使用 HTML 进行操作。使用表单构造函数的 initial 参数:

subject = request.GET.get('subject', '')
content = request.GET.get('content', '')
contact_form = ContactForm(initial={'subject': subject, 'content': content})

关于python - 如何在 Django 模板中设置动态默认文本区域数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27743685/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com