django文件上传不起作用:f.read()返回''

时间:2011-11-15 19:47:00

标签: django json upload

我正在尝试使用django上传和解析json文件。一切都很好,直到我需要解析json。然后我收到了这个错误:

No JSON object could be decoded: line 1 column 0 (char 0)

这是我的代码。 (我正在遵循指令here,并覆盖handle_uploaded_file方法。)

def handle_uploaded_file(f, collection):
#  assert False, [f.name, f.size, f.read()[:50]]
  t = f.read()
  for j in serializers.deserialize("json", t):
    add_item_to_database(j)

奇怪的是,当我取消注释“断言”行时,我得到了这个:

[u'myfile.json', 59478, '']

所以看起来我的文件上传的大小合适(我在服务器上验证了这一点),但是read命令似乎完全失败了。

有什么想法吗?

1 个答案:

答案 0 :(得分:2)

我之前见过这个。你的文件有长度,但读取它没有。我想知道以前是否已经阅读过...试试这个:

f.seek(0)
f.read()