我很難試圖在數據庫中存儲django中的特定ID的記錄。如何在django中測試數據庫中的空字符串?
something = User.objects.get(id=myID)
if something is None:
text="No Record"
我需要做這樣的事情。
我很難試圖在數據庫中存儲django中的特定ID的記錄。如何在django中測試數據庫中的空字符串?
something = User.objects.get(id=myID)
if something is None:
text="No Record"
我需要做這樣的事情。
由於轉11646(3個月前)Django中有一個特殊功能(見票11402):
if not User.objects.filter(id=myID).exists():
text = "No Record"
也就是更有效,因爲它產生EXISTS SQL語句,而不是填充Python對象。
if not User.objects.filter(id=myID):
text = "No Record"
您可以用安東尼Hatchkins'解決方案或:
try:
something = User.objects.get(id=myID)
except User.DoesNotExist:
text="No Record"
編輯:有一個shortcut這是非常方便的:
from django.shortcuts import get_object_or_404
def my_view(request):
my_object = get_object_or_404(MyModel, pk=1)
這個例子是等價於:
from django.http import Http404
def my_view(request):
try:
my_object = MyModel.objects.get(pk=1)
except MyModel.DoesNotExist:
raise Http404
+1這比我自己的回答好得多 – jbochi
感謝讚賞 –
我使用的是舊版本的django,存在是不允許的。 –