问题标签 [django-simple-history]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
3366 浏览

django - django simple-history in admin

I would like to add admin view capability to django simple-history. I created a history attribute on a model and this model now appears in the admin docs section automatically without any further code from me, but it does not appear in the admin section. I want users to be able to see the history of changes and to apply an undo function using the most_recent function. Do you have any suggestions for how to approach this?

0 投票
3 回答
3110 浏览

python - 如何使用 django-simple-history 存储 ManyToManyField 的历史记录。

如何使用 django-simple-history 存储 ManyToManyField 的历史记录。我使用了带有属性 m2m_filds 的 HistoricalRecords,但它抛出错误:意外的关键字参数'm2m_fields'

0 投票
2 回答
1559 浏览

python - django 简单历史 - 使用模型方法?

我正在使用django-simple-historyhttp
://django-simple-history.readthedocs.io/en/latest/ 我有一个模型,我想将其方法应用于历史实例。例子:

由于HistoricalPerson 类没有继承Person 的方法。但是使用 Person 方法实际上是有意义的,因为它们共享相同的字段..

有什么解决办法吗?我更喜欢简单的东西,而不是像在我的模型中为历史实例复制每个方法一样。

0 投票
2 回答
2773 浏览

python - Django简单历史删除模型删除的所有历史

使用 django simple history,如果对象本身被删除,有没有办法删除与对象关联的所有历史记录?例如,如果我有一个用户模型:

该查询将删除该用户,但不会删除所有历史记录,我想节省数据成本。有没有办法在删除时自动删除该特定用户的所有历史记录,或者我必须这样做:

谢谢。

0 投票
2 回答
358 浏览

python - 带有索引的 Django 批量模型删除

我最近使用它从我的数据库中删除了超过 200 万行(我想清除用户不再存在的任何用户历史记录)。我正在使用 Django 简单历史。

这花了大约 5 分钟,并删除了我想要的所有行。但是,在我运行该操作之前,我的表大小约为 900 MB。删除行后,它仍然是 700 MB——比我预期的要多得多。经过进一步检查,该表的 index_length 大小看起来仍然很大,为 424 MB。我认为它实际上并没有下降。

这个索引大小会下降吗?User 模型有一些 db_indices,比如 id、username 和 email。

0 投票
0 回答
183 浏览

python - 防止 django-simple-history 创建权限?

太多模型向 django 权限表发送垃圾邮件,即使在我不需要权限的模型中也是如此。
我使用 django-simple-history,django 在这些历史表上创建 permssions。我怎样才能避免它?我尝试将bases选项传递给,在其 Meta 中HistoricalRecords()传递了一个抽象类。
default_permissions = []没用。有什么解决办法吗?

事实上,如果 django 不会在每次迁移时都创建权限,我什至更愿意......

0 投票
2 回答
3734 浏览

django - 在 Django 模型中使用 update() 时如何跟踪更改

每当更改字段时,我都会尝试跟踪更改。

每当我使用 .save() 方法时,我都可以看到 Django Admin History 中的更改,但每当我使用 .update() 方法时,它不会记录我在对象中所做的任何更改。

我想使用 update() 因为它可以同时更改多个字段。它使代码更简洁,更高效(一个查询,一行......)

现在我正在使用这个:

当我这样做时,我可以看到所有的变化

我还使用 django-simple-history 来查看 changes.setup。

0 投票
2 回答
467 浏览

django - 如果已经使用 ModelAdmin 自定义,则无法注册简单历史?

register() 只接受 3 个位置参数(“self”被隐式传递。如果已经使用 ModelAdmin 类在 Django Admin 中自定义模型的外观,我的注册将如下所示:

如果我想注册 SimpleHistoryAdmin,我将添加第四个位置参数,如下所示:

这会引发以下异常:

如果用户已经使用 ModelAdmin 自定义模型,似乎无法注册简单历史。有没有另一种方法来实现避免这个问题的简单历史?

0 投票
1 回答
593 浏览

django - django 简单历史插件:render() 得到了一个意外的关键字参数“字典”

我正在尝试将 django-simple-history 插件与 django 1.10 版一起使用

根据文档:

  1. 使用以下命令安装插件:

    /li>
  2. 将 simple_history 添加到 INSTALLED_APPS

    /li>
  3. 要跟踪模型的历史记录,请在模型上创建一个 simple_history.models.HistoricalRecords 实例:

    /li>
  4. 为了允许在 Django 管理站点上查看以前的模型版本,在向管理站点注册模型时继承自 simple_history.admin.SimpleHistoryAdmin 类:

    /li>
  5. 当我尝试在管理员中的特定 ModelClass 实例上输入“历史记录”时,出现以下异常:

    /li>

追溯:

请指教解决方法!

0 投票
2 回答
2429 浏览

django - 从管理员外部访问 Django 简单历史日志?

我在我的项目中使用Django 简单历史来存储 LogEntry。我有使用Django 休息框架(DRF)的 API 构建和使用 Angularjs 的前端。对象的 LogEntry 历史保存没有任何问题,如下图所示!

在此处输入图像描述

模型.py

我可以毫无问题地从 django admin 访问对象历史记录。但是, 如何从 Django 管理员访问外部的 LogEntry 历史记录?我想序列化日志查询集并以 json 格式返回响应。

到目前为止我知道和做过什么?