两个django模型对象列表之间的差异

时间:2017-11-16 11:44:03

标签: python django django-models

我有两个数据源。一个是psql表(使用Django模型管理),另一个是CSV。我必须让表与csv保持同步。

所以,我现在的程序是:

  1. 从表中读取所有行并创建一组元组,并将其称为old_data
  2. 读取csv中的所有行并创建另一组元组,并将其命名为new data
  3. 因此,old_data - new_data为我提供了所有已删除和更新的对象。

    同样,new_data - old_data为我提供了所有已插入和更新的对象。

    因此,上述差异中具有primary key的对象将用于更新。 其余部分将被删除并相应插入。

    现在,这不是Django方式。 (我正在比较两组元组,而不是模型对象本身)

    可以通过某种方式比较模型对象来完成。

    更新

    我通过覆盖__hash__函数来创建对象的哈希值。这让我有了一些领先优势。再次,这可以进一步改进吗?

0 个答案:

没有答案