Zum Inhalt springen
Menü
Sie müssen registriert sein, um mit der Community zu interagieren.
Diese Frage wurde gekennzeichnet
4 Antworten
72879 Ansichten

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.

 

 

Avatar
Verwerfen
Autor Beste Antwort

I think i solved it :)

here my solution:

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

Avatar
Verwerfen
Beste Antwort

use something like this

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

Avatar
Verwerfen
Beste Antwort

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.

Avatar
Verwerfen
Beste Antwort

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

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

Avatar
Verwerfen
Verknüpfte Beiträge Antworten Ansichten Aktivität
3
Juli 25
8742
1
Mai 25
1033
0
Jan. 24
1719
1
Feb. 22
23870
5
Dez. 21
16712