我正在尝试使用django上传图像,到目前为止我看不到创建的upload_to
目录或数据库字段中的任何文件源。
我的模特。
class Person(models.Model):
photo = models.ImageField(upload_to='profiles/', null=True, blank=True)
我的观点
def create_profile(request):
if request.method == "POST":
form = PartialPersonForm(request.POST, request.FILES,)
addressForm = PartialAddressForm(request.POST)
当我上传并保存时,我不会遇到任何错误。无论如何,我可以调试它,并找出是否设置了照片字段。
<div class="photo-upload">{{ form.photo|attr:"onchange:readURL(this);" }}
答案 0 :(得分:2)
除非您在媒体存储方面做了一些特别的事情,否则您应该将MEDIA_ROOT设置到您希望保存上传文件的目录。
在处理文件类型字段时,您需要按照FileField.storage的Django文档中的说明进行操作。
在您看来,您需要save()
上传的表单数据。
def create_profile(request):
if request.method == "POST":
form = PartialPersonForm(request.POST, request.FILES,)
addressForm = PartialAddressForm(request.POST)
form.save()
addressForm.save()
答案 1 :(得分:-2)
我相信你应该自己创建upload_to目录。另外,请确保为目录设置适当的权限,否则将无法在其中写入。