Gibt es eine Möglichkeit, die folgenden in einem Aufruf zu erreichen:Model.objects.get() oder None
Model.objects.get(id=1) else None
Der einzige Weg, die ich gefunden habe, einen Weg, dies zu tun ist, indem Sie:
try:
object = Model...
except:
object = None
Gibt es eine Möglichkeit, dies in einem einzigen Aufruf in Django zu tun?
aktualisieren: Es scheint nicht ein Weg zu sein, um diese andere als in einem try/except
Block zu tun, aber hier ist eine bessere Antwort: In Django, how do I objects.get, but return None when nothing is found?
Nun, es scheint, dass Sie schon Ihre Frage gelöst . Als zusätzliches Argument verwenden Sie try: ... except (mit bestimmten Ausnahmen) wird in Python als eine gute Methode angesehen (ganz zu schweigen von Django, das mehr oder weniger der gleichen Philosophie folgt). –
'(Model.objects.filter (pk = 1) oder [None]) [0]' ist weniger explizit, aber manchmal auch nützlich. – okm
mögliches Duplikat von [In Django, wie mache ich objects.get, aber gebe None zurück, wenn nichts gefunden wird?] (Http://stackoverflow.com/questions/3090302/in-django-how-do-i-objects-get -aber-zurück-kein-wenn-nichts-ist-gefunden – congusbongus