使用XMLRPC从Odoo模型中删除所有记录

使用XMLRPC从Odoo模型中删除所有记录,odoo,odoo-10,Odoo,Odoo 10,根据Odoo 10官方文档,使用XMLRPC从模型中删除数据的方法是: models.execute_-kw(数据库、uid、密码、'res.partner'、'unlink'、[[id]]) 如果我想删除所有res.partner记录,我应该使用什么作为“id”?首先浏览res.partner中的所有记录 all_id = models.execute_kw(db, uid, password, 'res.partner', 'search',[[[]]]) 循环'all_id'并

根据Odoo 10官方文档,使用XMLRPC从模型中删除数据的方法是:

models.execute_-kw(数据库、uid、密码、'res.partner'、'unlink'、[[id]])

如果我想删除所有res.partner记录,我应该使用什么作为“id”?

首先浏览res.partner中的所有记录

all_id = models.execute_kw(db, uid, password,
    'res.partner', 'search',[[[]]])
循环'all_id'并在取消链接中传递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', [])
看起来容易些

另一种选择:

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

使用此解决方案,每个记录将发送一个取消链接请求。这不是很有效。更好的解决方案应该是
模型。不使用循环执行\u kw(db、uid、密码、'res.partner'、'unlink'、[all\u id])
。在我看来,最好的解决方案是在服务器上编写一个方法,它将删除所有res.partner记录。然后您可以从web服务api调用此方法。我认为最好的解决方案是在服务器上编写一个方法,它将删除所有res.partner记录。然后可以从web服务api调用此方法。(这将是python式的写作方式,谢谢分享你的想法)为什么要用三级括号?