【发布时间】:2018-10-21 08:26:30
【问题描述】:
我已经编写了一系列我在 django 模型输入上调用的 RegexValidator 定义。这是一个例子:
def fein_validator(value):
err = None
for validator in FEIN_VALIDATOR:
try:
validator(value)
return value
except ValidationError as exc:
err = exc
raise err
此方法的FEIN_VALIDATOR 参考如下。请注意,在这个例子中只有一个项目,我有其他验证器有多个项目(因此for loop):
FEIN_VALIDATOR = [
RegexValidator(r'^\d{2}-\d{7}$')
]
该方法运行良好,并在应有的时候抛出错误。但是,它抛出的错误是Enter a valid value.,我想自定义返回更具体。
我尝试过this 和this 的版本。但这些都假设只有一次通过。我正在尝试使用for loop 运行一系列验证器。
问题 1:我使用的方法构造是否适用于此 - 或者是否应该为每个验证设置单独的方法? [我可以添加自定义消息。]
问题 2:如果这确实有效,如何将引发的错误消息更改为自定义消息?
【问题讨论】:
标签: python django python-3.x error-handling