Я пытаюсь установить CreateView для модели, которая содержит ImageField. Я могу успешно загружать и отображать изображения со страницы администратора django. Но когда я загружаю изображения из своей формы, django не загружает изображения в папку «upload_to». Я пишу свои коды ниже:
модели.py
from django.db import models
class Album(models.Model):
title = models.CharField(max_length=127)
artist = models.CharField(max_length=63)
release_date = models.DateField()
logo = models.ImageField(blank=True, upload_to='album_logos', default='album_logos/no-image.jpg')
def __str__(self):
return self.title
формы.py
from django import forms
from .models import Album
class AlbumCreateForm(forms.ModelForm):
class Meta:
model = Album
fields = [
'title',
'artist',
'release_date',
'logo'
]
просмотры.py
class AlbumCreateView(CreateView):
form_class = AlbumCreateForm
template_name = 'music/album_create.html'
success_url = '/albums/'
альбом_создать.html
{% extends 'base.html' %}
{% block content %}
<form method="post">{% csrf_token %}
{{ form.as_p }}
<button type="submit">Create</button>
</form>
{% endblock %}
Когда я пытаюсь создать альбом с помощью «album_create.html» и загрузить изображение с формой по умолчанию django, изображение логотипа не загружается в папку «album_logos» и принимает значение по умолчанию. Где я делаю неправильно?