【发布时间】:2011-02-04 13:23:20
【问题描述】:
你好 Stack Overflow 社区!!
我正在尝试将文件上传到 GAE,并且我正在使用 Django。当我运行以下代码时,它会返回此错误:
Tried upload in module pathway.app.views.
Error was: 'module' object has no attribute 'FileField'
当我在谷歌上搜索解决方案时,我找到了this,但这个问题应该有 现在已经修复了吧?
目前我不确定我做错了什么,我是 GAE、python 和 Django 的新手,因此我们将不胜感激!
如果有人对此问题有更好的解决方案,请告诉我。对于这样一个简单的任务,代码似乎太多了。
models.py
class UploadModel(db.Model):
title = db.StringProperty()
file = db.BlobProperty()
blobl = db.BlobProperty()
modified_on = db.DateTimeProperty(auto_now_add= 1)
modified_by = db.UserProperty()
views.py
def upload(request):
if request.method == 'POST':
form = form.UploadFileForm(request.POST, request.FILES)
if form.is_valid():
handle_uploaded_file(models.db.Blob(request.FILES['file']))
return HttpResponseRedirect('/success/url/')
else:
form = form.UploadFileForm()
files = models.UploadModel.all().order('-modified_on').fetch(20)
payload = dict(files = files)
return render("upload.html",payload)
form.py
from django import newforms as forms import models
class UploadFileForm(forms.Form):
title = forms.CharField(max_length=50)
file = forms.FileField()
【问题讨论】:
-
你为什么使用这么旧版本的Django? GAE 从 2009 年开始支持 Django 1.1。
-
我不相信我使用的是旧版本。我想我可能做的是查看旧的示例代码。您知道更好的解决方案吗?
标签: python django google-app-engine