获取Pymodm中的第一个值

2024-10-02 00:22:45 发布

您现在位置:Python中文网/ 问答频道 /正文

我想使用pymodm检查注册用户时给出的用户名是否已经存在,并且有一个类似于使用pymongo的清晰解决方案:

if users.find_one({"username": username}) is not None:
     print("This username already exists")

要编写此代码,我必须编写:

^{pr2}$

因为pymodm使用预期。这是非常低效和繁重的编码。你知道吗?在


Tags: 用户noneifisusernamenotfind解决方案
1条回答
网友
1楼 · 发布于 2024-10-02 00:22:45

好吧,是的,线程不是最理想的方式,但是,在这种情况下,它的效果与打开一个侦听器等待db请求就绪时的回调稍有相同。在

您的代码是多余的,因为异常已经检查了您的if语句。像这样做:

try :
     user = User.objects.get({'username': username})
     print("This username already exists")
except errors.DoesNotExist:
     # You can create the user     
     print("This username can be used")

还可以考虑在username字段中创建一个index,或者使用索引字段执行user find操作,您可能已经有了,这将使您的应用程序性能更好。在

相关问题 更多 >

    热门问题