0

首先免责声明:我正在使用 django-mongodb-engine 我观察到的问题可能是由于不同的数据库驱动程序造成的。无论如何,调用 MyModel.object.create() 似乎实际上创建了一个数据库条目。这与 django 文档相反,该文档指出“请注意,实例化模型绝不会触及您的数据库; for that, you need to save().来源。这是一个例子:

In [4]: MyModel.objects.filter(email='test')
Out[4]: [<MyModel: MyModel object>]

In [5]: MyModel.objects.create(email='test')
Out[5]: <MyModel: MyModel object>

In [6]: MyModel.objects.filter(email='test')
Out[6]: [<MyModel: MyModel object>, <MyModel: MyModel object>]

正如您在上面看到的,create() 确实“触及了数据库”。有什么办法可以防止这种行为?

4

1 回答 1

2

这是预期的行为。create在数据库中创建一条记录。您引用的文档段落是指在内存中实例化模型:

my_instance = MyModel(email='test')
于 2014-02-10T23:44:40.183 回答