附加到Django中的对象

时间:2017-03-06 14:42:53

标签: python django

我需要将信息附加到Django中的对象而不是更新它。我有这个数据库:

Python has 002 type of quotes

更新的代码:

Database:
-----------------------
ColA  |  ColB
-----------------------
1     |  "Test string."

这会将o = Model.objects.select_related().filter(ColA=1).update( ColB = "Entry 2") 设置为ColB。我希望能够追加而不是更新。我有没有办法追加文字,以便Entry 2设置为ColB

2 个答案:

答案 0 :(得分:4)

你可以,但它有点繁琐。

from django.db.models import Value
from django.db.models.functions import Concat

Model.objects.select_related().filter(ColA=1).update(ColB=Concat('ColB', Value('Entry 2')))

获取项目,修改项目并保存项目可能更容易:

o = Model.objects.get(ColA=1)
o.ColB += "Entry 2"
o.save()

答案 1 :(得分:0)

objects = Model.objects.select_related().filter(ColA=1)
for o in objects:
    o.colB = o.colB + ' Entry 2.'
    o.save()