crm_leadの新しいone2manyを介してリンクされる新しいモデル(crm_lead_externalと呼びます)を追加しました。
したがって、私のモジュールには2つのモデルが定義されています。更新されたcrm_lead(_name = crm_leadを使用)と新しいcrm_lead_externalです。
この外部モデルはファイルを追跡するため、「ファイル名」フィールドがあります。
また、このファイル名フィールドに一意のSQLインデックスを作成しました。
これは私のモジュールの一部です:
def copy(self, cr, uid, id, default=None, context=None):
if not default:
default = {}
default.update({
'state': 'new',
'filename': '',
})
ret = super(crm_lead_external, self).copy(cr, uid, id, default, context=context)
#do file copy
return ret
ここでの目的は、外部エンティティの複製を許可することですが、ファイルパスを再ターゲットすることです。
ここで、リードで[複製]をクリックすると、一意の制約でIntegrityErrorが発生します。copy()が呼び出されない特別な理由はありますか?
このロジックをcopy_data()に追加する必要がありますか?ミスト私は本当にリードのcopy()をオーバーライドしますか?
前もって感謝します。