У меня есть форма модели, содержащая поле изображения, но при рендеринге мой шаблон добавляет немного дополнительной информации о текущем изображении (пути), поэтому он выглядит следующим образом:
Сейчас: user1 / Avatar.png
Изменение: (Выберите файл ...)
Я бы хотел избавиться от этого "Сейчас: ..." , поэтому он показывает только Выберите файл .. . Когда в поле профиля модели профиля задано значение null = True, пусто = True, он также отображает флажок для очистки аватара, чего я тоже не хотел бы иметь.
models.py
class Profile(models.Model):
name = models.CharField(max_length=250)
avatar = models.ImageField(upload_to=user_directory_path)
forms.py
class ProfileForm(forms.ModelForm):
class Meta:
model = Profile
fields = ('name', 'avatar')
template
<section class="container">
<form action="." id="Form" enctype='multipart/form-data' method="POST">
{{ profile_form.as_p }}
{% csrf_token %}
<p> <input type="submit" value="Update!"/> </p>
</form>
</section>
РЕДАКТИРОВАТЬ: я добавил в свою ProfileForm
widgets = {
'avatar': FileInput(),
}
Теперь это не ' Эти дополнительные вещи не отображаются, но он также, похоже, не «запоминает», какой аватар в настоящее время связан с пользователем, и каждый раз, когда я нажимаю «обновить», чтобы изменить имя, я также должен загрузить новый аватар.