问题标签 [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 投票
0 回答
87 浏览

django - 如何将自定义字段添加到历史记录并使用 django-simple-history 中的信号为其分配值

请检查Required Json Here 我想使用抽象模型将自定义字段添加到HistoricalRecords。我想显示带有附加字段“replaced_with”的历史记录。每个文件历史记录应该告诉它被哪个文件替换。

它给出了当前文件历史记录,但我们需要将以前的文件替换为历史记录中的当前文件,如下所示:

0 投票
1 回答
93 浏览

python - 以与主模型相同的方式序列化 Django 简单历史项目

我正在尝试将 Django 休息框架与 Django 简单历史结合使用。这个答案让我理解了如何序列化模型的历史项目。这适用于简单的情况,但我的模型有一个计算字段(下例中的“存储”)。问题是历史字段的序列化似乎没有捕捉到这些。如何以与主模型相同的方式对历史进行序列化?to_representation是否可以在方法中做到这一点HistoricalRecordField

我得到的是这样的:

但我想要的是没有历史列的历史项目和没有显示的“商店”字段。基本上我希望历史项目列表像主模型中的项目一样被序列化:

0 投票
0 回答
84 浏览

django - 如何在 Django 中获取用户的活动历史记录?

我需要显示用户在我的系统中所做的所有操作的页面(这样他们的经理基本上可以看到他们一直在做什么)。

我在以前的项目中使用过 Django-Reversion,但我在文档/谷歌搜索等中真正能找到的只是获取特定对象的更改历史记录。即不是特定用户对几个对象(各种模型)所做的更改。

有人知道.filter(user=request.user)在数据库中的所有版本(无论型号如何)上可能会说的方法吗?或者甚至更好,只是一个相关的名称,所以也许request.user.versions。我看到的唯一方法是get_for_object()and get_for_model()。我想我想要的是 get_for_user()

另外,django-simple-history 可能会更好吗?

0 投票
0 回答
15 浏览

django - 我们如何才能在 django-simple-history 中只保留删除操作

我们可以在 Django 应用程序中使用django-simple-history将插入/更新/删除操作的历史记录保存在任何表中。是否有任何设置或配置仅在具有 django-simple-history 的表中保留删除操作的历史记录?

0 投票
0 回答
50 浏览

django - django-simple-history 仅在满足特定条件时保存历史记录

我正在使用 Django 构建一个项目。我想使用该django-simple-history包来保存每次创建/更新/删除的模型历史记录。

我只想在超级用户或特定类型的用户(例如主管)进行创建/更新/删除操作时保存历史记录,但我不知道如何实现此条件。

我试过这个看看当前用户是否是它使用它的参数之一,但是这个方法似乎不能正常工作。在我的代码的一部分下面:

当我使用控制台时,我什么也没有得到.save_without_historical_record()它保存实例但不打印任何东西。

0 投票
1 回答
497 浏览

python - 如何获取修改对象的用户?django-简单历史

我正在尝试使用 django-simply-history 库保存对象的历史记录,到目前为止,我可以看到对象本身的更改,但看不到进行更改的用户。

我有以下设置。

设置:

楷模:

然后在壳牌我做:

谢谢,

0 投票
1 回答
28 浏览

django - 获取单个用户 django-simple-history 的任何注册模型的所有更改

楷模:

user = User.objects.first() 无论如何,是否可以通过user

0 投票
1 回答
64 浏览

python - 在 Django 的 simple_history 中使用 diff_against 时如何指定“excluded_fields”

我在 django 的 simple_history 中使用 diff_against。请参阅 simple_history 文档中的“历史差异”: https://django-simple-history.readthedocs.io/en/latest/history_diffing.html 我已经完成了所有工作,但它指出: "diff_against also accepts 2 arguments excluded_fields and included_fields to either explicitly include or exclude fields from being diffed." 我无法弄清楚如何传递这些字段。这是我所拥有的工作(没有任何包含或排除字段):

我使用以下方法在详细视图中调用它:

这一切都有效。然后我尝试包含“exclude_field”。这些是我尝试过的,但没有一个奏效:

这很简单,但我没有弄清楚。任何帮助都会很棒。谢谢。

0 投票
2 回答
52 浏览

django - 从 django rest 框架中 to_representation 方法的 django simples 历史中排除历史字段

我正在使用带有 django-simple-history 的 Django Rest Framework,目前我想在我的Boardrest API 中返回历史修改,目前它做得很好,但我想隐藏一些字段。这是当前的输出:

在此处输入图像描述

但是,我不需要id,history_id等。

我的实现与本文中的亚历山大回答相同。这是我目前的序列化程序,我将历史记录放在我的 Board 模型上

但这似乎不是最好的方法。

如果您对如何以正确的方式进行操作有一些提示,我想知道。提前致谢!

0 投票
1 回答
48 浏览

python - 如何在 Graphene-Django 中传递 django-simple-history 模型?

我在我的通知模型中创建了一个 simple_history.models.HistoricalRecords 实例

模型.py

架构.py

这工作正常,但是当我查询通知时,我想要由 HistoricalRecords() 为 graphql 端点中的通知模型创建的所有记录。我怎样才能做到这一点?