以呈现的Django表单显示文件/图像上载的初始值

2024-05-23 16:51:36 发布

您现在位置:Python中文网/ 问答频道 /正文

所以我上传了一张图片和一份文件。问题有两个方面,首先在呈现的形式中,它显示的是标签,而不是初始值,甚至是图片,所以任何人都很难意识到他们必须上传任何东西。其次,在上传时,它没有显示已经上传的文档/图像,所以你最终会认为它不起作用。我在下面附上了一张照片,展示了这个问题。我怎么解决这个问题?在

enter image description herepicture showing the problem in the form

上面的图片清楚地显示了眼前的问题。在

截至2017年8月31日,我已经添加了Meta并尝试使用ClearableFileInput小部件,但仍然没有工作。更新代码见下文:

从表单.py在

profile_image = forms.ImageField(widget=forms.ClearableFileInput(), required=True, label="Profile Picture*")
    cvv = forms.FileField(widget=forms.ClearableFileInput(), initial='upload a CV', required=True, label="CV*")

    class Meta:
        model = ProfileTeacher
        fields = ('description', 'document' 'name','last_name','phone_number', 'date_of_birth', 'bank_account', 'id_number', 'postal_code', 'adress', 'profile_image', 'nationality' )
        widgets = {
            'profile_image' : forms.FileInput,
        }

    def __init__(self, *args, **kwargs):
        super(RegisterFormTeacher, self).__init__(*args, **kwargs)
        self.fields['name'].widget.attrs['placeholder'] = 'John'
        self.fields['last_name'].widget.attrs['placeholder'] = 'Doe'
        self.fields['adress'].widget.attrs['placeholder'] = '4 Privet Drive, Little Whinging'

从模型.py在

^{pr2}$

从呈现表单的html中:

<div class="card-content">
<form id="teacher-register-form" action="{% url 'teacher-register' %}" method="post" enctype="multipart/form-data">
   {% csrf_token %}
   {{ form|bootstrap }}
   <span></span>
   <br/>
   <br/><!-- an attempt to bridge the gap between the buttons. -->
   <span>{% trans "If you have an account" %}</span>
   <br />
   <a href="{% url 'teacher-login' %}" class="btn btn-primary">{% trans "Init session" %}</a>
   <button type="submit" class="btn btn-primary pull-right">{% trans "Register" %}</button>
</form>

我必须补充,在模型时,在管理一切都是显示良好,但当渲染时,我看不到任何价值。在


Tags: thenameimageselfformfields图片forms