Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/image/5.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 此字段为必填字段,但字段的格式为_Python_Django_Django Forms - Fatal编程技术网

Python 此字段为必填字段,但字段的格式为

Python 此字段为必填字段,但字段的格式为,python,django,django-forms,Python,Django,Django Forms,所以我有一个表单,我用request.POST初始化它,但是,即使表单有正确的字段,它也是无效的,我还缺少什么 def some_view(self, request): form = SomeForm(request.POST or None) if form.is_valid(): (Pdb) form.data <QueryDict: {u'csv_file': [u'some_csv_file.csv'], u'csrfmiddlewaretoken': [u'c

所以我有一个表单,我用request.POST初始化它,但是,即使表单有正确的字段,它也是无效的,我还缺少什么

def some_view(self, request):
    form = SomeForm(request.POST or None)
    if form.is_valid():

(Pdb) form.data
<QueryDict: {u'csv_file': [u'some_csv_file.csv'], u'csrfmiddlewaretoken': [u'csrftoken']}>
(Pdb) form.is_valid()
False
(Pdb) form.errors
{'csv_file': [u'This field is required.']}
def some_view(self,request):
form=SomeForm(request.POST或None)
如果form.is_有效():
(Pdb)表单数据
(Pdb)表格。是否有效()
假的
(Pdb)表单错误
{'csv_file':[u'此字段是必需的。]}

当您有Django表单中的文件字段时,有两件事要做:

1. In your template, in the form tag, add enctype="multipart/form-data"
    <form method="POST" action="" enctype="multipart/form-data">

2. Pass the request.FILES when creating the form
    form = SomeForm(request.POST or None, request.FILES)
1。在模板的表单标记中,添加enctype=“多部分/表单数据”
2.创建表单时传递request.FILES
form=SomeForm(request.POST或None,request.FILES)

您没有显示表单,但大概
csv\u文件
是一个文件字段。它需要一个实际的文件,在
request.FILES
中,而不仅仅是一个文件名。啊,我想它会出现在request.POST中,嗯,那么你是对的,request.FILES是空的