Skip to Content
Meniu
Trebuie să fiți înregistrat pentru a interacționa cu comunitatea.
Această întrebare a fost marcată
3 Răspunsuri
6091 Vizualizări

Hello,

In a custom module that I'm developping, I've got an error when clicking on a button "apply".

In facts, I inherited the create function that is called by a click on this button like this :

def create(self, cr, uid, vals, context=None):

  self.write(cr, uid, 1, vals, context=context)

  return True

But currently, this error appear when I click on this button :

Odoo Warning - Missing Record

One of the records you are trying to modify has already been deleted (Document type: to.magento).

How can I solve that ?


Thank you in advance !
Imagine profil
Abandonează
Cel mai bun răspuns

The code you posted doesn't make any sense, you are overriding the create method to call the write method to change the record with id = 1 with the vals of the create method. The error is that the record with id = 1 could be not created or deleted, you are not calling the super create so you cannot create anything using this method. 

Imagine profil
Abandonează
Cel mai bun răspuns

Tutorial - Learn How to override create method in Odoo with Example - 

http://odootechnical.com/learn-overriding-create-method-in-odoo-8/

Imagine profil
Abandonează
Cel mai bun răspuns

If you want to write / update some value after record create you should write like that:

def create(self, cr, uid, vals, context=None):

   id = super(class_name, self).create(cr, uid, vals, context = context)

   vals.update({'field_name': value})    //   here you can give fields name for which you want to update value.

   self.write(cr, uid, id, vals, context=context)

  return True


Imagine profil
Abandonează
Related Posts Răspunsuri Vizualizări Activitate
2
iul. 25
4456
1
ian. 20
5576
0
sept. 15
4010
1
mar. 15
7492
1
mar. 15
6606