为什么FieldDoesNotExist在POST.get()上不起作用?

问题描述 投票:0回答:1

如果表单POST不包含字段'myfield'的值,我想捕获异常:

    try:
        set_var = request.POST.get('myfield')
    except FieldDoesNotExist:
        raise FieldDoesNotExist("Your field is not here.")

为什么不引发异常?

django django-forms
1个回答
0
投票
.get(..) method [Django-doc]将在键不存在的情况下,返回您传递给.get(..)参数的值,并且如果您自己没有为default=…传递值,则default=…default

您可能想要

subscript None,那么您可以捕获request.POST异常:

MultiValueDictKeyError
© www.soinside.com 2019 - 2024. All rights reserved.