Итак, я потратил более 24 часов, пытаясь выяснить, как сохранить изображение в моей модели.
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE, primary_key=True)
avatar = models.FileField(null=True, upload_to='www-avatar/')
Мой Profile Model
имеет атрибут avatar
, который обозначает изображение профиля..
Что я хочу сделать, это после того, как User
завершит процесс регистрации, модели Profile
будет назначено изображение по умолчанию из моей статической папки.
Здесьмой Settings.py для статического
STATIC_ROOT = '/srv/foo/'
STATIC_URL = '/static/'
STATICFILES_DIRS = (os.path.join(BASE_DIR, "bar/resource/"), )
И изображение, которое я хочу загрузить и сохранить в модели, находится в bar/resource/profile_light.png
Пока что решение, которое я нашелэто с этим
file = File()
url = static("bar/resource/profile_light.png")
file = urllib.request.urlopen(url).read()
r = File(file)
authbox.profile.avatar = File(file)
authbox.profile.save()
безрезультатно.Я новичок в Django, и я был бы очень признателен за любую форму помощи.
РЕДАКТИРОВАТЬ: Возможно, я плохо сформулировал свой вопрос, но мне нужно добавить изображение по умолчанию в создаваемые профили.Фрагмент сохранения аватара, который я дал выше, находится после процесса регистрации.Поэтому я хочу получать доступ к изображению каждый раз, когда кто-то подписывается, и изображение сохраняется как аватар по умолчанию.