1

我得到一个:

TypeError: 'NoneType' object has no attribute '__getitem__' 

错误,因为我的程序正在查询我的数据库。问题是它会停止我不希望 Web 应用程序发生的整个程序。

相反,我怎么能优雅地处理这个,因为它必须引用一个空字段,我不关心它。这是一个代码片段:

try:
    if not doc['coordinates']:
        xxxxxxxxx
    else:
        xxxxxxxx

except (ValueError, geocoders.google.GQueryError):
    pass

我尝试在 中包含 a TypeErrorexcept()但这会导致客户端出现问题。

谢谢

4

1 回答 1

2

这个怎么样 :-

if doc:
    try:
        if not doc['coordinates']:
            xxxxxxxxx
        else:
            xxxxxxxx

    except (ValueError, geocoders.google.GQueryError):
        pass

或这个 :-

    try:
        if not doc or not doc['coordinates']:
            xxxxxxxxx
        else:
            xxxxxxxx

    except (ValueError, geocoders.google.GQueryError):
        pass
于 2012-12-11T09:51:59.043 回答