gpt4 book ai didi

python - 如何使用 Django 表单字段使字符串在网页上可见

转载 作者:太空宇宙 更新时间:2023-11-03 16:04:28 25 4
gpt4 key购买 nike

我创建了一个 django 页面,并设法向其传递值。我正在尝试制作一个包含一些字符串的文本框。如果需要,用户可以编辑并保存该字符串。

View .py

form = EditProjectForm(project_name = project_name,store_id=store_id, `enter code here`start_date=start_date,end_date=end_date,data = request.POST or None)
context = {'someList': someList ,'form':form}
return render(request, 'editview.html', context)

表单.py

class EditProjectForm(forms.Form):
def __init__(self, *args, **kwargs):
self.project_name = kwargs.pop('project_name')
super(EditProjectForm, self).__init__(*args, **kwargs)
self.fields['project_name'] = forms.CharField(self.project_name)

我尝试使用

forms.CharField(widget=forms.TextInput(attrs={'placeholder': self.project_name }))

但这不会显示为可编辑文本。

我希望 self.project_name 在我的页面上的文本框中可见并且可编辑。

这就是我希望输出的样子

desired output

编辑1:我使用 itzmeontv 提示来使用“初始”感谢您的“初始”
但是,它似乎仅当我在创建表单时不传递参数时才有效

例如。我的views.py 中的 form = EditProjectForm() 似乎有效,但表单 = EditProjectForm(项目名称 = 项目名称)然后设置初始 = self.project_name ,不起作用。

编辑2:使用 form = EditProjectForm(initial={'project_name': project_name})似乎有效。谢谢!!

最佳答案

尝试使用initial

forms.CharField(widget=forms.TextInput(attrs={'placeholder': self.project_name }), initial=self.project_name)

form = EditProjectForm(#your arguments, initial={'project_name': self.project_name})

关于python - 如何使用 Django 表单字段使字符串在网页上可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39984508/

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