我看不出这个能用...
我的模型中有一个方法has_related_object
,它需要检查相关对象是否存在......
class Business(base):
name = models.CharField(max_length=100, blank=True, null=True)
def has_related_object(self):
has_customer = False
has_car = False
try:
has_customer = (self.customer is not None)
except Business.DoesNotExist:
pass
try:
has_car = (self.car.park is not None)
except Business.DoesNotExist:
pass
return has_customer and has_car
class Customer(base):
name = models.CharField(max_length=100, blank=True, null=True)
person = models.OneToOneField('Business', related_name="customer")
错误
相关对象不存在业务没有客户。
我需要检查这些相关对象是否存在,但是要从业务对象方法内部进行检查
1条答案
按热度按时间h6my8fg21#
你正在捕获
except Business.DoesNotExist
,但这不是抛出的异常,对于this SO answer,你想捕获一般的DoesNotExist
异常。编辑:见以下备注:
DoesNotExist
捕获实际的异常,因为它们继承自DoesNotExist
。最好捕获真实的的异常,而不是从所涉及的模型中抑制任何和所有DoesNotExist
异常。