追跡するモデルにリンクする一般的な関係を持つモデル TrackedItem を取得しました。
私がそれを行う場合:
t = TrackedItem(content_object=MyModel)
t.save()
t.save()
私は得る:
IntegrityError: (1062, "Duplicate entry '1' for key 'PRIMARY'")
確かに、最初の保存では、PK として「1」を持つエントリが作成されました。ただし、2 回目の保存は挿入ではなく、更新する必要があります。
2 回保存できないモデルを更新するにはどうすればよいですか?
普通のモデルならいくらでも節約できます。
編集:一般的な関係とはまったく関係がない場合があります。
オーバーライドされた保存があり、この方法で super を呼び出します:
super(TrackedItem, self).save(self, *args, **kwargs)
このようにすると、うまくいきます:
model.Model.save(self, *args, **kwargs)