Я храню некоторые данные с плавающей запятой в своих моделях Django, и имеет смысл только определенный диапазон значений. Поэтому я бы хотел наложить эти ограничения как на уровне модели, так и на уровне ограничений SQL.Как создать Django FloatField с максимальными и минимальными пределами?
Например, я хотел бы сделать что-то вроде этого:
class Foo(Model):
myfloat = FloatField(min=0.0, max=1.0)
Я хочу сделать это на уровне модели, а не уровне формы. Фактически, мне может понравиться, чтобы уровень формы имел другой диапазон; например, использовать проценты [0,100] на уровне формы, но перевести на [0,1] в модели.
Возможно ли это, и если да, то как бы я это сделал?
OK. И тогда расширение MinMaxFloat для фактической проверки против этих значений и создания ограничений базы данных будет соответствовать мне? – Reid
Он создает ограничение на уровне модели django, т. Е. Вы можете вставить запись вручную, как 'Foo (myfloat = -1.0) .save()', но вы получите ValidationError при попытке отправить 'ModelForm' на основе вашей модели' Foo' – San4ez