【发布时间】:2021-11-28 16:09:44
【问题描述】:
class A:
min_v = 1
max_v = 15
number1 = IntegerField(min_value=min_v, max_value=max_v)
class B(A):
number2 = IntegerField(min_value=A.min_v, max_value=A.max_v)
class C(B):
min_v = 2
max_v = 20
如何使number1 和number2 在班级C 中的范围为2 到20?
我在考虑两种方法:
- 在
__init__重新声明self.fields['number1']喜欢IntegerField(min_value=self.min_v) - 在
__init__中设置self.fields['number1'].min_value=self.min_v并覆盖setattr()以添加验证器。
什么是最好和最干净的方法?
【问题讨论】:
标签: python django django-forms