【发布时间】:2017-12-03 19:04:25
【问题描述】:
根据 Odoo 10 官方文档,使用 XMLRPC 从模型中删除数据的方法是:
models.execute_kw(db, uid, password, 'res.partner', 'unlink', [[id]])
如果我想删除所有 res.partner 记录,我应该使用什么作为 'id'?
【问题讨论】:
根据 Odoo 10 官方文档,使用 XMLRPC 从模型中删除数据的方法是:
models.execute_kw(db, uid, password, 'res.partner', 'unlink', [[id]])
如果我想删除所有 res.partner 记录,我应该使用什么作为 'id'?
【问题讨论】:
首先浏览 res.partner 中的所有记录
all_id = models.execute_kw(db, uid, password,
'res.partner', 'search',[[[]]])
循环 'all_id' 并在 unlink 中传递 id
for id in all_id:
models.execute_kw(db, uid, password, 'res.partner', 'unlink', [[id]])
【讨论】:
models.execute_kw(db, uid, password, 'res.partner', 'unlink', [all_id]) 没有循环。我认为最好的解决方案是在服务器上编写一个方法,该方法将删除所有 res.partner 记录。然后你可以从 web 服务 api 调用这个方法。
如 odoo 论坛所述:
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)
【讨论】: