我可以或应该在视图中执行此操作吗?在Django中动态更改QuerySet对象
a = SomeTable.objects.all()
for r in a:
if r.some_column == 'foo':
r.some_column = 'bar'
它像一个冠军,但我想类似的事情别的地方,我得到了奇怪的结果,这意味着QuerySet的对象不喜欢惹的。而且,我没有看到文档中的任何内容对于这种技巧的好坏。
我知道还有其他的方法可以做到这一点,但我特别想知道这是一个坏主意,为什么它不好,如果它确实很糟糕,那么'最好'的最Django/pythonic方式在飞行中改变价值将是。
谢谢Daniel。当我说“我知道还有其他方法可以做到这一点”时,您的示例正是我的意思,我也很感谢您的澄清。哦,你的分片例子正是我提到的奇怪结果。我有点尴尬,我没有听清楚,我很高兴你指出了这一点。干杯! – proffrink 2012-03-15 11:56:31