gpt4 book ai didi

python - 无法理解为什么外键在此代码中保持为空

转载 作者:太空宇宙 更新时间:2023-11-04 06:06:13 25 4
gpt4 key购买 nike

我在 Django 1.6 中有一些代码:

这是我的模型.py:

class MyClass1
... # some stuff

class MyClass2
... # some stuff
fk_to_class1 = models.ForeignKey(MyClass1, blank=True, null=True)

在 View 中的某处:

list_of_objects2 = []
# list_of_objects1 contains several objects from MyClass1

for elt in list_of_objects1:
list_of_objects2.append(MyClass2(fk_to_class1=elt))

MyClass2.objects.bulk_create(list_of_objects2)

在此之后,来自 MyClass2 的对象应该有填充了一些值的“fk_to_class1”,但它们是空的。没有出现错误。我不明白。感谢您的帮助。

最佳答案

这可能是由于“list_of_objects1”仍然包含没有 id 的“elts”。

也许您应该在保存后“重新加载”您的列表。

编辑:例如,您的列表如下所示:

list_of_objects1 [
elt1 {id : null}
elt2 {id : null}
]

如果您保存“list_of_objects1”。您的 ORM 将在您的数据库中设置 ID,但不会在您的实例中设置。因此,您可能需要使用设置的 ID 从您的数据库重新加载您的实例。

关于python - 无法理解为什么外键在此代码中保持为空,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21912250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com