我一直在 Django 应用程序中使用 MongoEngine 的 get_or_create 方法。今天,我注意到有一些重复的条目。我在 MongoEngine API Reference for get_or_create 中发现了这一点:
\n\n\n\n\n这需要两个单独的操作,因此存在竞争条件。由于 mongoDB 中没有事务,因此应研究其他方法,以确保使用此方法时不会意外重复数据。现在计划在 1.0 之前删除
\n
我应该使用这样的东西吗?:
\n\nfrom models import Post\npost = Post(name=\'hello\')\ntry:\n Posts.objects.get(name=post.name)\n print "exists"\nexcept:\n post.save()\n print "saved"\nRun Code Online (Sandbox Code Playgroud)\n\n这能解决我的问题吗?\n有更好的方法吗?
\n