Мое поле модели не принимает символ "+" в данные. Использование поля CharField для модели
models.py
class Profile(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE,null=True)
mobile = models.CharField(max_length=14,null=True)
add = models.CharField(max_length=10,null=True)
image = models.FileField(null=True)
def __str__(self):
return self.user.username
когда я даю мобильный = +12345
в админке отображается как mobile = 12345
после редактирования и сохранения он показывает +12345
почему? и какое поле использовать для включения символа +
когда я даю
mobile = +12345
.
Вы передаете int
, Django преобразует его в str
, но число имеет значение 12345
, а не +12345
.
Что вам нужно сделать, так это сохранить его как строку, так:
Profile.objects.create(
user=…,
mobile='+12345',
add=…,
image=…
)