У меня есть следующая форма, вид и форма модели, версия Django - 3.0, а исходная БД записана в PostgreSQL, форма отправляется через ajax.
class Model(models.Model):
depth = models.FloatField(blank=True, null=True)
from_field = models.FloatField(blank=True, null=True)
to = models.FloatField(blank=True, null=True)
interval = models.FloatField(blank=True, null=True)
class Meta:
managed = False
class Form(forms.ModelForm):
class Meta:
model = Model
fields = ['depth', 'from_field', 'to', 'interval']
@csrf_exempt
def AddData(request):
form = Form(request.POST)
if form.is_valid():
form.save()
Когда AddData выполняется, ошибок нет, но данные выглядят примерно так:
depth=30, from_field=null, to=null, interval=null
Данные, сохраненные в базе данных:
depth=30, from_field=0, to=null, interval=null
Возможно, это связано с тем, что модель имеет параметр managed = False? Я проверил данные, отправленные шаблоном, и когда они получены представлением, и нулевые данные правильно отображаются в БД, за исключением поля from.