[英]Django ImageField: files dont get uploaded
我在模型中实现了一些ImageField,并安装了PIL(不是最干净的安装)。 当我在管理中获得一个上载按钮时,一切似乎都正常了,当我在视图中调用.url属性时,我得到了带有文件名及其上载属性的字符串。 问题在于文件不存在,显然,一旦保存模型,文件就不会上传。
任何想法?
谢谢
这是我的代码情况的示例
models.py
class My_Model(models.Model):
[...]
image = models.ImageField(upload_to = 'images/my_models/main')
view.py
'image': query.my_model.image.url
结果:
static/images/my_models/main/theimage.png
确保在POST时将request.FILES绑定到表单,并且在模板中将表单声明为多部分
这是我的一个应用程序的视图:
@login_required
def submit(request):
if request.method == 'POST':
(Photo.objects.count()+1, request.FILES['photo'].name.split(".")[1]), request.FILES['photo'])}
form = PhotoForm(request.POST, request.FILES)
if form.is_valid():
new = Photo(photo=request.FILES['photo'], name=request.POST['name'])
new.save()
return HttpResponseRedirect('/') # Redirect after POST
else:
form = PhotoForm()
return render_to_response('app/submit.html', {'form': form}, context_instance=RequestContext(request))
和PhotoForm类:
class PhotoForm(forms.ModelForm):
class Meta:
model = Photo
fields = ('name', 'photo')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.