我有一个入口模型如下:
class Entry(models.Model):
date_posted = models.DateTimeField(auto_now_add=True)
last_edited = models.DateTimeField(auto_now=True)
author = models.ForeignKey(CustomUser)
title = models.CharField(max_length=150)
description = models.TextField()
tags = models.ManyToManyField(tags)
现在,每当用户创建或编辑Entry
对象时,我们都会将其发送到审核队列,并且该对象在被审核之前不可用于Entry
对象的默认管理器。当用户最初创建对象但当用户编辑条目对象时,它会从搜索结果中消失,这是有意义的。我们还为用户提供保存或收藏不同条目的功能。所以编辑的条目对象在保存条目中不再可用,直到它被审核。
我要做的是让旧的Entry
显示出来,直到Entry
编辑的条目对象被审核后,我们可以用原始条目替换已编辑的条目。
我能想到的一种方法是为用户进行的每次编辑创建一个不同的条目对象,但我不太确定这是否是一种可行且明智的方法来处理这种情况,它不会只是有很多重复的数据数据库??
问题:
- 我有什么选择?(我也想知道哪些性能最好)
- 有没有办法在不复制对象的情况下实现这一目标?