如何获取具有指向对象的ForeignKey的所有模型对象的列表?(类似于DELETE CASCADE之前Django管理员中的删除确认页面).
我试图想出一种在数据库中合并重复对象的通用方法.基本上我希望所有具有ForeignKeys指向对象"B"的对象被更新为指向对象"A",这样我就可以删除"B"而不会丢失任何重要的东西.
谢谢你的帮助!
我有模特Books,Chapters和Pages.它们都是由User:
from django.db import models
class Book(models.Model)
author = models.ForeignKey('auth.User')
class Chapter(models.Model)
author = models.ForeignKey('auth.User')
book = models.ForeignKey(Book)
class Page(models.Model)
author = models.ForeignKey('auth.User')
book = models.ForeignKey(Book)
chapter = models.ForeignKey(Chapter)
Run Code Online (Sandbox Code Playgroud)
我想做的是复制现有的Book并将其更新User给其他人.皱纹是我也想复制所有相关模型实例的Book-它所有的Chapters和Pages以及!
当看到a时,事情变得非常棘手Page- 不仅新的Pages需要author更新他们的领域,而且他们还需要指向新的Chapter对象!
Django是否支持开箱即用的方式?复制模型的通用算法会是什么样的?
干杯,
约翰
更新:
上面给出的类只是一个例子来说明我遇到的问题!