私は1つのフィールドを持つモデルを持っています(これは合成例です):
model Tank:
oxygen = models.PositiveSmallIntegerField(
_("Oxygen %"),
help_text="%",
default=21,
validators=[MinValueValidator(21.0), MaxValueValidator(50.0)],
null=True,
)
そして、いくつかのファイルをデータで解析します。モデルインスタンスを書き込む前に入力データを検証したい。このようなもの
oxygen = get_raw_data()
Tank.oxygen.validate(oxygen) # this is wrong I know :)
# if value is valid do something
# else do something
Tank.oxygen.validate(oxygen) の代わりに何を書けばいいですか? モデルインスタンスを保存するときに検証ロジックを複製したり、データを検証したりできますが、誰かがより良い解決策を知っているかもしれません。