【问题标题】:Django model instance left openDjango 模型实例保持打开状态
【发布时间】:2018-10-23 10:46:11
【问题描述】:

如果 Django Model 实例处于打开状态且未保存,会不会有任何问题?

例如:

qs1 = Foo1.objects.all().first()
qs1.some_field = 'Bar1'

qs2 = Foo2.objects.all().first()
qs2.some_field = 'Bar2'

我正在考虑有 2 个打开的 2 个不同模型的实例,这些模型必须在多种情况下被调用。因此,与其一遍又一遍地编写那些 4 行,我是否可以简单地定义这些行,然后调用qs1.save()qs2.save() 而不会在将来出现问题?

【问题讨论】:

  • 请解释您的意思 - “在多种情况下都必须调用”
  • 有多个if 语句,根据这些语句的结果,是否会保存这些实例。 @PankhuriAgarwal

标签: python django django-models


【解决方案1】:

将 qs1 和 qs2 视为仅在调用 qs1.save() 或 qs2.save() 时才会写入数据库的普通变量。

在调用 save() 之前,不会调用数据库,每次赋值都会改变这些变量的状态。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-14
    • 2013-01-27
    • 2017-06-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多