0

嗨,我对 Django 很陌生,我正在尝试使用项目模型和任务模型创建一个应用程序。每个项目都有一个或多个任务。我想做的是添加一个TaskHistory模型,每个任务都有一个或多个taskhistory。每次我更改任务中的某些内容时(因为这将是我必须进行大量编辑的内容),我希望创建一个新的关联 TaskHistory。是否可以 ?

4

1 回答 1

1

这是可能的,但很可能在应用程序/视图层而不是直接在 Django 模型中编码。您正在尝试的内容似乎与作为标准django.contrib.admin应用程序的一部分创建的日志条目非常匹配,因此您应该在此应用程序中寻找想法。 每次在管理界面中更新、创建或删除对象时,django.contrib.admin都会将条目记录到表中。LogEntry

您的应用程序可能需要存储模型内容的更改,例如任务描述的更改,而不仅仅是任务是否已创建。为此,您可能需要当前任务对象和更新的任务详细信息才能创建TaskHistory对象。

每个能够修改任务的视图还包括可以创建TaskHistory对象的逻辑,并将更新/新对象TaskTaskHistory对象保存为独立的模型对象,可能包装在数据库级事务中以使更改以原子方式显示。

于 2013-06-03T12:19:43.933 回答