我需要验证一个对象是否存在并返回该对象,然后根据该执行操作.在没有返回404的情况下,这样做的正确方法是什么?
try: listing = RealEstateListing.objects.get(slug_url = slug) except: listing = None if listing:
zzart.. 179
你也可以
if not RealEstateListing.objects.filter(slug_url=slug).exists(): # do stuff...
有时使用try更清楚:除了:阻塞和其他时间单行存在()使代码看起来更清晰......所有这些都取决于你的应用程序逻辑.
你也可以
if not RealEstateListing.objects.filter(slug_url=slug).exists(): # do stuff...
有时使用try更清楚:除了:阻塞和其他时间单行存在()使代码看起来更清晰......所有这些都取决于你的应用程序逻辑.
如果你没有给404,我不会使用404包装器.这是误用意图.只需抓住DoesNotExist即可.
try: listing = RealEstateListing.objects.get(slug_url=slug) except RealEstateListing.DoesNotExist: listing = None