私はいくつかの浮動小数点データを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()'のように手動でレコードを挿入できますが、 'Foo'モデルに基づいて' ModelForm'を送信しようとするとValidationError – San4ez