繁体   English   中英

Django图像字段未在前面更新

[英]Django Image Field not Updating on the Front

我正在尝试让我的应用验证应用模板中的图像上传字段,并保存所有上传的新图像。 一切在管理员方面都可以正常工作,但是当我在正面进行图像更改时,不会保存它。

这是我的模特

def imageupload(instance, filename):
    return os.path.join('static/petition-photos/', filename)

# Create your models here.

class Petition(models.Model):
    title = models.CharField(max_length= 90, default="Enter petition title here")
    created_on = models.DateTimeField(auto_now_add=True)
    image = models.ImageField(null=False, upload_to=imageupload)
    video = models.CharField(max_length=600, default="Enter an external video link")
    petition = models.TextField(null=False, default="Type your petition here")
    created_by = models.ForeignKey(User)

这是我的视图类:

class NewPetitionView(generic.edit.CreateView):
model = Petition
template_name = 'petition/petition_form.html'
fields= ['title','petition', 'image', 'video']
success_url = '/dashboard/'

def form_valid(self, form):
    form.instance.created_by = self.request.user
    return super(NewPetitionView, self).form_valid(form)

这是我的表单模板:

{% include 'layout/header.html' %}

{% block content %}
    <form action="" method="post">
        {{form.as_p}}
        <button type="submit">Submit</button>
        {% csrf_token %} 
    </form>
{% endblock %}

当我将图像上传到新帖子或尝试编辑其中一项的图像字段时,收到“此字段必填”通知。

我究竟做错了什么?

您需要在<form>添加enctype="multipart/form-data"才能使文件上传工作。

<form action="" method="post" enctype="multipart/form-data">

django文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM