Django 数据存储报错uploading() got an unexpected keyword argument

Django项目,上传文件后,获取到文件的文件名和保存的文件路径,将这些信息批量存储到数据库中出现报错:TypeError: uploading() got an unexpected keyword argument 'filetitle',以下是部分代码,跪谢大神。

views.py:

def test_4(request,template='test_4.html'):
    if request.method == 'POST':
        form = UploadFileForm(request.POST, request.FILES)
        print form
        print type(form)
        if form.is_valid():
            f=handle_uploaded_file(request.FILES['file'])
            print f[0]
            print type(f[0])
            title = f[0]
            path = f[1].decode('gbk')
            print path
            print type(path)
            upload=list()
            upload.append(uploading(filetitle=title,filepath=path))
            uploading.objects.bulk_create(upload)
            return HttpResponse('上传成功')
        else:
            return HttpResponse('上传失败')
      else:
        form = UploadFileForm()
      context = {
        'form': form,
       }
      return render(request,'test_4.html',context)
        

models.py:

class uploading(models.Model):
    filetitle = models.CharField(verbose_name=u"文件名",default=0,max_length=255)
    filepath = models.FilePathField(verbose_name=u"文件目录",default=0,max_length=255)
    fileexit = models.BooleanField(verbose_name=u"是否存在", default=False)
    uploadtime = models.DateTimeField(verbose_name=u"上传时间",auto_now_add=True)
    def __unicode__(self):
        return self.file_title

运行报错:

<tr><th><label for="id_file">File:</label></th><td><input type="file" name="file" required id="id_file" /></td></tr>
<class 'suyu.forms.UploadFileForm'>
0.gif
<type 'unicode'>
F:\django_test\media/
<type 'unicode'>
Internal Server Error: /test_4.html
Traceback (most recent call last):
  File "D:\Anaconda2\envs\Python27\lib\site-packages\django\core\handlers\exception.py", line 41, in inner
    response = get_response(request)
  File "D:\Anaconda2\envs\Python27\lib\site-packages\django\core\handlers\base.py", line 187, in _get_response
    response = self.process_exception_by_middleware(e, request)
  File "D:\Anaconda2\envs\Python27\lib\site-packages\django\core\handlers\base.py", line 185, in _get_response
    response = wrapped_callback(request, *callback_args, **callback_kwargs)
  File "D:\Anaconda2\envs\Python27\lib\site-packages\django\views\decorators\csrf.py", line 58, in wrapped_view
    return view_func(*args, **kwargs)
  File "F:\django_test\suyu\views.py", line 134, in test_4
    upload.append(uploading(filetitle=title,filepath=path))
  File "D:\Anaconda2\envs\Python27\lib\site-packages\django\views\decorators\csrf.py", line 58, in wrapped_view
    return view_func(*args, **kwargs)
TypeError: uploading() got an unexpected keyword argument 'filetitle'
阅读 7.9k
2 个回答

你把title打印出来看看是不是没有值

你看看是不是哪个地方也定义了一个 uploading 所以名称冲突了.

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题