Czy istnieje sposób, aby osiągnąć następujące w jednej rozmowy:Model.objects.get() lub None
Model.objects.get(id=1) else None
Jedynym sposobem znalazłem sposób, aby to zrobić, wykonując:
try:
object = Model...
except:
object = None
Czy jest sposób na wykonanie tego w jednym wywołaniu w django?
Aktualizacja: Nie, nie wydaje się być sposób to zrobić inny niż w try/except
bloku, ale tutaj jest lepsza odpowiedź: In Django, how do I objects.get, but return None when nothing is found?
Cóż, wydaje się, że już rozwiązany pytanie . Dodatkowym argumentem jest użycie try: ... except (z określonymi wyjątkami) jest uważane za dobrą praktykę w Pythonie (nie mówiąc już o Django, który podąża mniej więcej tą samą filozofią). –
'(Model.objects.filter (pk = 1) lub [Brak]) [0]' jest mniej jednoznaczne, ale czasami przydatne. – okm
możliwy duplikat [w Django, jak mogę objects.get, ale zwrócić None, gdy nic nie zostanie znalezione?] (Http://stackoverflow.com/questions/3090302/in-django-how-do-i-objects-get -but-return-none-when-nothing-is-found) – congusbongus