Я использую postgresql
версию 10.6 с моим Django
2.1 приложением.Проблема в том, что когда я использую null=True
в поле моей модели, он переводит в пустую строку ('') в столбце базы данных по умолчанию, где я пытаюсь использовать его по умолчанию как null
.
В моем следующем примере кода image
столбец должен быть null
:
class Profile(models.Model):
user = models.OneToOneField(User, on_delete=models.CASCADE)
image = models.ImageField(upload_to='profile_pics', null=True, blank=True)
И я вызываю этот класс из signal
следующим образом:
@receiver(post_save, sender=User)
def create_profile(sender, **kwargs):
if kwargs.get('created') is True:
Profile.objects.create(user=kwargs.get('instance'))
В этом снимке вы видите, что столбец image
вставляется как пустая строка вместо null
Я также пытался использовать значение по умолчаниюдля моего поля модели:
image = models.ImageField(default=None, upload_to='profile_pics', null=True, blank=True)
, но оно тоже не работает.