Django: Невозможно сохранить изображение из шаблона
Если я пытаюсь сохранить изображение из админки сайта, оно работает правильно. Но я пытаюсь сохранить изображение из шаблона, и оно не работает. вот мой код
models.py:
class About(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
profilePicture = models.ImageField(upload_to='images/profile/', default = 'images/useravater.png')
views.py:
def editProfile(request):
if request.method == 'POST':
profilePicture = request.FILES['pp']
About.objects.filter(user=request.user).update(profilePicture=profilePicture)
# more code...
html:
<form style="width: 100%;" action="/editProfile/" method="POST" enctype="multipart/form-data">{% csrf_token %}
<input id="inputpp" type="file" accept="image/*" name="pp" title="Select Image">
<!-- more code -->
</form>
после выполнения этого кода, если я попытаюсь вывести:
print(About.objects.get(user=request.user).profilePicture.url)
показывает:
Not Found: /media/image_name.jpg
Можете ли вы найти мою проблему?
как мне сохранить изображение в /media/images/profile/
?
В вашем случае лучше использовать OneToOneField.
models.py:
class About(models.Model):
user = models.OneToOneField(User, related_name='about' on_delete=models.CASCADE)
profilePicture = models.ImageField(upload_to='images/profile/', default = 'images/useravater.png')
views.py:
def editProfile(request):
if request.method == 'POST':
profilePicture = request.FILES['pp']
if request.user.about:
request.user.about.profilePicture=profilePicture
request.user.about.save()
# more code...