Skip to Content
Меню
Вам необхідно зареєструватися, щоб взаємодіяти зі спільнотою.
Це запитання позначене
1 Відповісти
2004 Переглядів

I have a new field for a model with existing records. It works on new records but I also want old records to have a value on the field. How can I achieve this?

Аватар
Відмінити

What is the type of your new field? Is it a normal field or compute field?
It would be better if you share your code.

Автор

It turns out what I needed was odoo hooks

Найкраща відповідь

Hi,

You can use odoo Post hooks for this problem:

You need to post_init_function in your manifest file:

              'post_init_hook':'add_field_test'

Import the post_init_hook function in your __init__.py file and define the function

from . hooks import add_field_test

Inside the hooks.py file define the function as follows,

from odoo import api,SUPERUSER_ID

def add_field_test(cr,registry):
​env=api.Environment(cr,SUPERUSER_ID,{})
​for rec in env[demo.model].search([]):
​rec.field="value"

For more information refer: https://www.cybrosys.com/blog/how-to-use-hooks-in-odoo-development

Regards

Аватар
Відмінити
Related Posts Відповіді Переглядів Дія
1
вер. 23
1455
1
бер. 24
887
1
квіт. 24
1649
2
січ. 24
2673
0
жовт. 23
1309