2017-06-29 17 views
2

を使用してOdooモデルからすべてのレコードを削除し、XMLRPCを使用してモデルからデータを削除する方法は次のとおりです。Odoo 10公式ドキュメントあたりのようXMLRPC

models.execute_kw(db, uid, password, 'res.partner', 'unlink', [[id]]) 

私はすべてのres.partnerレコードを削除したい場合は、どのような条私は 'id'として使う?

答えて

2

まず

all_id = models.execute_kw(db, uid, password, 
    'res.partner', 'search',[[[]]]) 

ループは 'all_id' res.partnerからすべてのレコードを参照し、odooフォーラムで語ったようにunlink

for id in all_id: 
    models.execute_kw(db, uid, password, 'res.partner', 'unlink', [[id]]) 
+0

このソリューションを使用すると、レコードごとに1つのリンク解除要求を送信します。それは本当に効率的ではありません。 – Nope

+0

より良い解決策は 'models.execute_kw(db、uid、password、 'res.partner'、 'unlink'、[all_id])'です。私の意見では、最良の解決策は、すべてのres.partnerレコードを削除するメソッドをサーバーに書き込むことです。次に、このメソッドをWebサービスAPIから呼び出すことができます。 – Nope

+0

私の意見では、最良の解決策は、すべてのres.partnerレコードを削除するメソッドをサーバーに書き込むことです。次に、このメソッドをWebサービスAPIから呼び出すことができます。 (あなたのアイデアを分かち合ってくれてありがとうございます) –

0

にIDを渡す:

models.execute_kw(db, uid, password, 'res.partner', 'unlink', []) 

もっと簡単に表示されます。

別のオプション:

search_ids = models.execute_kw(db, uid, password, 'res.partner', 'search', []) 
models.execute_kw(db, uid, password, 'res.partner', 'unlink', search_ids) 
関連する問題