Django:我的对象的 list 属性未保存在函数内部



Django新手。所以我做了一个模型,其中一个属性是列表。然后我做了一个实例;类列表";属性。这并不是将列表数据永久保存到对象的属性中(这不是模型对象的全部点吗?(。我很困惑该怎么做。

class Mymodel:
class_list = []
my_object = Mymodel()
values = [1, 2, 3, 4, 5, 4, 3, 2, 1]
def myFunction():
for value in values:
my_object.class_list.append(value)
return something_unrelated

因此,在my_object中,我希望在其class_list属性中保存新值。我不希望函数返回class_list。我希望Django将属性保存在它的数据库中。如果我在for循环前后插入print语句(见下文(,我会得到我所期望的结果。

def myFunction():
print(my_object.class_list)
for value in values:
my_object.class_list.append(value)
print(my_object.class_list)
return something_unrelated

在领事馆我会看到

[]
[1, 2, 3, 4, 5, 4, 3, 2, 1]

但如果我之后print(my_object.class_list),它将打印[]那么我该如何让Django保存我的对象信息呢?我错过了什么,或者我在这里做错了什么?

编辑我想我想要的是save()函数,但我只是试着在my_object即上使用它

def myFunction():
print(my_object.class_list)
for value in values:
my_object.class_list.append(value)
print(my_object.class_list)
my_object.save()
return something_unrelated

但是如果我再次调用MyFunction,列表仍然是空的(第一个print语句仍然返回一个空字符串(。我仍然不确定如何将其永久保存到数据库中。

如果要将对象保存到数据库,则需要使用save方法。

更改my_object.save()后再尝试。

最新更新