Marshmallow字段校验自定义错误消息未生效问题咨询
问题原因
你将长度校验相关的错误提示配置在了fields.String的error_messages的invalid键下,但是invalid仅对应字段类型不匹配的错误场景,长度超限是独立校验器Length抛出的错误,该错误不会触发你配置的invalid提示,所以返回了默认提示。
解决方案
你可以选择两种修改方式:
- 方案1:将错误提示直接配置在
Length校验器的参数中
phone_number = fields.String( validate=Length( max=20, error="Phone number must be a string shorter than 20 letters." ) )
- 方案2:在字段的
error_messages中使用长度超限对应的max键配置提示
phone_number = fields.String( validate=Length(max=20), error_messages={ 'max': 'Phone number must be a string shorter than 20 letters.' } )
内容的提问来源于stack exchange,提问作者Lazar Šćekić
相关产品推荐
相关产品推荐

