首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Django中同时更新其中一个实例时,如何反映一对多关系实例的更改?

在Django中同时更新其中一个实例时,如何反映一对多关系实例的更改?
EN

Stack Overflow用户
提问于 2020-04-21 13:00:17
回答 1查看 60关注 0票数 0

我有两个与Foreignkey连接的表。我在主模型中有一个字段,它的值取决于子实例。

例如,如果我有一个库模型和一个图书模型,那么Book有Foriegnkey到Library。我们在图书馆模型中有一个字段,它等于图书馆里所有书籍的"total_price“。当我增加或减少某本书的数量时,我如何更新该字段"total_price“。

请注意,为了获得正确的值,我必须分别保存每个实例,。我在库中将图书作为一个TabularInline,所以我对数量进行更改并保存更改,然后再按一次保存以更改"total_price“字段。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-04-22 09:06:38

为了解决这个问题,我在保存子模型之后调用了主模型的保存方法。

代码语言:javascript
复制
class Book(models.Model):
    library = models.Foreignkey(Library, on_delete = models.CASCADE)
    ....
    def save(self, *args, **kwargs):
    self.price = BookPrice(self)
    super(Item, self).save(*args, **kwargs)
    self.library.save() 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61344178

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档