возможно ли для fileField сохранить URL в django - PullRequest
0 голосов
/ 30 апреля 2020

Я работаю и использую dj-rest-auth и Django -allauth в проекте, где у пользователя есть поле с фотографией профиля в его модели пользователя. Это поле имеет отношение один к одному с другой моделью, имеющей файловое поле. Это поле файла, потому что пользователь должен иметь возможность добавлять изображения и картинки в качестве фотографии своего профиля.

Проблема в том, что, когда пользователь регистрируется с помощью Google, фотография профиля получается из Google, который является URL. Как я могу go обойти это?

моя фотомодель

class Photo(models.Model):
    '''
    This model will be a general model for files upload to amazon
    '''
    url = models.FileField()

    def __str__(self):
        return self.url
class User(AbstractBaseUser, PermissionsMixin):
    email = models.EmailField(max_length=254, unique=True)
    name = models.CharField(max_length=250)
    display_picture = models.OneToOneField(Photo, on_delete=models.CASCADE, related_name='dp', blank=True)
    is_staff = models.BooleanField(default=False)
    is_superuser = models.BooleanField(default=False)
    is_active = models.BooleanField(default=True)
    last_login = models.DateTimeField(null=True, blank=True)
    date_joined = models.DateTimeField(auto_now_add=True)
    slug = models.SlugField(max_length=255, unique=True, blank=True)

1 Ответ

1 голос
/ 30 апреля 2020

добавьте еще два поля к вашей фотомодели:

  • is_url (логическое поле для определения, какие из двух нижних следует использовать)
  • url (поле char для хранения URL из oauth)
  • изображение (поле файла)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...