Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/324.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django';s get_或_create方法返回不存在的数据_Python_Django_Django 1.8 - Fatal编程技术网

Python Django';s get_或_create方法返回不存在的数据

Python Django';s get_或_create方法返回不存在的数据,python,django,django-1.8,Python,Django,Django 1.8,我有一个名为Service的模型,其中有一个名为Service1的对象。我在壳牌公司得到了以下信息: $ obj, created = Service.objects.get_or_create(name=u'Service1') $ obj <Service: Service1> $ obj.id 3 $ created False $ Service.objects.all() [<Service: Service1>] $ Service.objec

我有一个名为Service的模型,其中有一个名为Service1的对象。我在壳牌公司得到了以下信息:

$ obj, created = Service.objects.get_or_create(name=u'Service1')
$ obj
  <Service: Service1>
$ obj.id
  3
$ created
  False
$ Service.objects.all()
  [<Service: Service1>]
$ Service.objects.first().id
  1
$obj,created=Service.objects.get\u或\u create(name=u'Service1')
$obj
$obj.id
3.
$created
假的
$Service.objects.all()
[]
$Service.objects.first().id
1.

我检查了数据库,发现只有一个服务对象是id=1的服务。为什么
get\u或\u create
要检索一个甚至不存在的对象?

问题是缓存。我正在使用一个新的数据库转储,但我忘记了使缓存无效。Django正在检索一个不再存在但可以在旧数据库中找到的对象。

Service.objects.get(id=3)的结果是什么?@jerinterGeorge
DoesNotExist:服务匹配查询不存在。
您的
服务
模型是否有自定义管理器?@mohistolanki它没有。我使用
models.Manager
。不overrides@almanegra你所有的模特都有这种行为吗?