python - 使用 Mongoengine 进行插入只能从 shell 工作,但不能从 Django View 工作

标签 python django mongodb mongoengine

我遇到了奇怪的情况 - 从 Django shell 创建一些 Mongoengine 对象是成功的,但是从 Django View 创建相同的对象看起来成功,但 MongoDB 中没有出现任何数据。 IE。相同的代码 -

from myapp.mongomodels import MyModel

m = MyModel(a=1, b=2, c=3)
m.save()

manage.py shell 运行时生成插入 MongoDB 的新对象,从 Django View 运行时不生成任何内容。我跟踪了代码,发现 mongoengine.Document.save() 方法运行正确,没有任何异常。

看起来我错过了一些明显的事情。

将不胜感激任何帮助。

最佳答案

您应该能够做到这一点,但使用以下方法强制保存:

from myapp.mongomodels import MyModel

m = MyModel(a=1, b=2, c=3)
m.save(force_insert=True)

关于python - 使用 Mongoengine 进行插入只能从 shell 工作,但不能从 Django View 工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6692035/

相关文章:

mongodb - Spring Data MongoDB BigDecimal 支持

javascript - 蒙戈聚合

python - 比较多个字符串以查找 'average'/最常见的字符串

jquery - 我怎样才能在点击时重新加载一个div?

python - 根据另一个字段的值在 Django 模型上添加约束

django - 手动调度 Django 基于类的 View

mongodb - 在实时应用程序中将长 MongoDB 列名称重命名为较短的名称

python - n_jobs=-1 的 sklearn Logistic 回归实际上并不并行化

python - 在 TensorFlow 中,如何在非本地方法中对本地方法中的张量进行就地更改?

python - 嵌套列表 : Count, 最大值和最小值