我有以下模型,ImageField()
扩展了User
:
class Tenant(models.Model):
user = models.OneToOneField(User)
photo = models.ImageField()
apartment = models.ForeignKey('Apartment')
但是,当我从表单创建模型时,图像不会保存到我的MEDIA_ROOT目录中。这似乎是非常基本的功能,但我无法在任何地方找到简单的答案。
当我在管理部分创建用户时,文件会保存,但不会在我使用表单创建时保存。我该怎么办?
答案 0 :(得分:1)
问题在于。
首先我有:
$json_output = @file_get_contents("http://www.youtube.com/oembed?url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D" . $v['id']);
但纠正于:
...
photo = request.POST['photo'] # <--- 'POST', incorrect
tenant = Tenant(user=user, photo=photo, apartment=apartment)
tenant.save()
来自https://docs.djangoproject.com/en/1.8/topics/http/file-uploads/
注意:强>
我还必须从
更改模板中的表单标记photo = request.FILES['photo'] # <--- 'FILES', correct
tenant = Tenant(user=user, photo=photo, apartment=apartment)
tenant.save()
到
<form action="/account/create_account/" method="post">