Django queryset return 同一元素的不同值
Django queryset return different value for the same element
我很困惑...这是我查询一个非常简单的模型时得到的结果:
python manage.py shell
In [1]: from tm_repository.models import TMTable
In [2]: a=TMTable.objects.filter(sourceVC__contains='this activates the function for stating the access level of the input')
In [3]: a.count()
Out[3]: 8
In [4]: a[7].sourceVC
Out[4]: u'Select {1}{2}2{3}{4}; this activates the function for stating the access level of the input line in question, {5}Change Line Level [0-7]{6} appears on the display.'
In [5]: a[7].sourceVC
Out[5]: u'this activates the function for stating the access level of the input line in question, Change Line Level [0-7] appears on the display.'
对象变了!我的意思是,这是怎么回事?据我所知 python 中的列表是持久的并且阅读 django 文档我没有找到任何可以证明这种奇怪行为的理由......
我做错了什么?
SQL 查询默认不排序。数据库从结果的不同排序返回了不同的实例。将 order_by 添加到查询中,您将得到相同的实例(只要没有并发编辑)。
我很困惑...这是我查询一个非常简单的模型时得到的结果:
python manage.py shell
In [1]: from tm_repository.models import TMTable
In [2]: a=TMTable.objects.filter(sourceVC__contains='this activates the function for stating the access level of the input')
In [3]: a.count()
Out[3]: 8
In [4]: a[7].sourceVC
Out[4]: u'Select {1}{2}2{3}{4}; this activates the function for stating the access level of the input line in question, {5}Change Line Level [0-7]{6} appears on the display.'
In [5]: a[7].sourceVC
Out[5]: u'this activates the function for stating the access level of the input line in question, Change Line Level [0-7] appears on the display.'
对象变了!我的意思是,这是怎么回事?据我所知 python 中的列表是持久的并且阅读 django 文档我没有找到任何可以证明这种奇怪行为的理由......
我做错了什么?
SQL 查询默认不排序。数据库从结果的不同排序返回了不同的实例。将 order_by 添加到查询中,您将得到相同的实例(只要没有并发编辑)。