跳至内容
菜单
此问题已终结
4 回复
72180 查看

I am trying to delete some record from database not the current record, and i got error like this:

 

result = [method(rec, *args, **kwargs) for rec in self] 

return new_api(self, *args, **kwargs)

ValueError: "unlink() takes exactly 1 argument (2 given)" while evaluating

 

and here my code:

class demo_demo(models.Model):

_name = 'demo.demo'

...

@api.multi

def unlink(self):

return super(demo_demo, self).unlink()

 

@api.one

def _delete_from_db(self):

# Search data in database for current model

find_id = self.search([('name', '=', 'demo')]) # result demo.demo(1,)

self.unlink(find_id.id)

Thanks.

 

 

形象
丢弃
编写者 最佳答案

I think i solved it :)

here my solution:

self.search([('name', '=', 'demo')]).unlink()

形象
丢弃
最佳答案

use something like this

self.env["hr.employee"].search([('type','=','permanent')]).unlink()

形象
丢弃
最佳答案

l have apparently less than 8 karma! :-)
... In your code, I get the impression you send the name as a parameter and then look for the id. Why is that!? Why not just send the id as a a parameter? Sending id as parameter makes sense and will always work. I'm looking for a solution deleting records using id as parameter.

形象
丢弃
最佳答案

To delete records with constraint just like account e.t.c 

watch this module: https://youtu.be/4v5P1UdhdxU

形象
丢弃
相关帖文 回复 查看 活动
1
5月 25
464
0
1月 24
1241
2
5月 23
8061
1
2月 22
23099
5
12月 21
16165