Mysql 如何在django中测试数据库中的空字符串?
我很难测试数据库中是否存在django中特定ID的记录Mysql 如何在django中测试数据库中的空字符串?,mysql,django,Mysql,Django,我很难测试数据库中是否存在django中特定ID的记录 something = User.objects.get(id=myID) if something is None: text="No Record" 我需要这样做。您可以使用Antony Hatchkins的解决方案或: if not User.objects.filter(id=myID): text = "No Record" try: something = User.objects.get(id=m
something = User.objects.get(id=myID)
if something is None:
text="No Record"
我需要这样做。您可以使用Antony Hatchkins的解决方案或:
if not User.objects.filter(id=myID):
text = "No Record"
try:
something = User.objects.get(id=myID)
except User.DoesNotExist:
text="No Record"
编辑:有一个非常方便的:
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
自版本11646(3个月前)起,django有一个特殊的功能(见票证):
这更有效,因为它生成EXISTS sql语句而不是填充python对象。我使用的是django的旧版本,exist是不允许的。
if not User.objects.filter(id=myID).exists():
text = "No Record"