Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python django uuu init_uuuuuu()得到了一个意外的关键字参数';内容';_Python_Html_Django_Django Models_Django Forms - Fatal编程技术网

Python django uuu init_uuuuuu()得到了一个意外的关键字参数';内容';

Python django uuu init_uuuuuu()得到了一个意外的关键字参数';内容';,python,html,django,django-models,django-forms,Python,Html,Django,Django Models,Django Forms,我是django的新手,我正在制作小型SNS程序 我构建模型和表单,如下所示 models.py forms.py(我创建了这个文件) 我的应用程序的views.py如下所示 views.py 最后,我的html代码在这里 SNS.html 社交网站 {%csrf_令牌%} 内容: 密码: 时间线 我想填写文本字段“内容”和“密码”,然后单击“提交”按钮发布它们 然后在我的页面上保存并打印文章 但当我提交数据时,django会引发TypeError 我一个人在学习django,这对我来说

我是django的新手,我正在制作小型SNS程序

我构建模型和表单,如下所示

models.py

forms.py(我创建了这个文件)

我的应用程序的views.py如下所示

views.py

最后,我的html代码在这里

SNS.html


社交网站
{%csrf_令牌%}
内容:

密码:


时间线
我想填写文本字段“内容”和“密码”,然后单击“提交”按钮发布它们

然后在我的页面上保存并打印文章

但当我提交数据时,django会引发TypeError

我一个人在学习django,这对我来说太痛苦了

请告诉我为什么会发生这种错误,并给我一些建议

少加评论对我有很大帮助


提前感谢

在表单中没有名为
内容
的参数

如果要将POST数据传递给django表单,可以将其作为第一个位置参数传递,如下所示:

form = SNSForm(request.POST)
form = SNSForm(data=request.POST)
或者显式地将名为
数据
的关键字参数传递给
表单
,如下所示:

form = SNSForm(request.POST)
form = SNSForm(data=request.POST)
调用
form.is\u valid()
时,数据已填充到表单属性中。无需将
内容
密码
等单个字段值传递给表单

Django的
forms.ModelForm
将使用
request.POST
自行填充
content
password
的值

你所要做的就是:

if form.is_valid():
    form.save()
    return redirect('/to-other-page/')

表单中没有称为
content
的参数

如果要将POST数据传递给django表单,可以将其作为第一个位置参数传递,如下所示:

form = SNSForm(request.POST)
form = SNSForm(data=request.POST)
或者显式地将名为
数据
的关键字参数传递给
表单
,如下所示:

form = SNSForm(request.POST)
form = SNSForm(data=request.POST)
调用
form.is\u valid()
时,数据已填充到表单属性中。无需将
内容
密码
等单个字段值传递给表单

Django的
forms.ModelForm
将使用
request.POST
自行填充
content
password
的值

你所要做的就是:

if form.is_valid():
    form.save()
    return redirect('/to-other-page/')

为什么要再次创建
表单
?顺便说一句,这不是创建表单对象的方式。第一种方法很好,只需传递
request.POST
param。为什么要再次创建
表单
?顺便说一句,这不是创建表单对象的方式。第一种方法很好,您只需传递
request.POST
param。我误解了模型的一些基本概念,您的评论对我帮助很大!非常感谢。我误解了模型和表单的一些基本概念。你的评论对我帮助很大!非常感谢。