我想比较数据库中的两个Twilio数字。因为它们以“+”开头,所以我不确定如何比较它们。这是我收集数据并将数字保存到数据库的代码。我正在尝试检查数据库中的传入号码。
if request.method == 'POST':
a = Number.objects.all()
from_number = request.POST.get('From', None)
u = Number(cell_number=from_number)
u.save()
msg_new = 'We recorded your number as %s' % (from_number)
m = Response()
m.message(msg_new)
return m
一如既往,感谢您的帮助!
更新
根据我收到的答案,我更新了代码。它有效!
if request.method == 'POST':
from_number = request.POST.get('From', None)
if Number.objects.filter(cell_number=from_number).exists():
msg = "We already have your number recorded in our system."
r = Response()
r.message(msg)
return r
else:
u = Number(cell_number=from_number)
u.save()
msg_new = 'We recorded your number as %s' % (from_number)
m = Response()
m.message(msg_new)
return m
答案 0 :(得分:3)
我假设您所指的Twilio数字以标准https://peekandpoke.wordpress.com/2015/02/26/dancing-the-lambada-with-aws-lambda-or-sending-emails-on-s3-events/格式存储,该格式已标准化以删除所有空格等。
如果是这样,那么您需要做的就是在数据库中查找数字。因此,要查看数字是否已经存在,您可以这样做:
if Number.objects.filter(cell_number='+4412349834024').exists():
# The number already exists in the database
else:
# The number doesn't exist in the database, go ahead and add it
如果您要以这种方式查询,则可能需要确保将cell_number
字段编入索引。