Я видел все похожие потоки, читал документы и пытался использовать множество комбинаций для хранения пустого значения IntegerField
в db и не выполнялся каждый раз.
Я использую MySQL.
My models.py
определяет поле age=models.IntegerField()
. Я заполняю db из файла csv, а некоторые ячейки не имеют значения. Django docs говорит:
Field.null
If True, Django will store empty values as NULL in the database. Default is False.
Note that empty string values will always get stored as empty strings, not as NULL.
Поскольку я работаю с IntegerField
, я хочу, чтобы пустая строка (пустая ячейка из csv) хранилась как NULL
в db. Поэтому я (думаю) должен добавить null=True
в поле age
. На самом деле, я пробовал больше, чем это:
age=models.IntegerField()
age=models.IntegerField(null=True)
age=models.IntegerField(null=True, blank=True)
age=models.IntegerField(null=True, blank=True, default=None)
и каждый раз, когда я вставляю пустую строку в db, я получил
ValueError: invalid literal for int() with base 10: ''
Можно догадаться, что еще я могу сделать?