Перейти к содержимому
Меню
Чтобы взаимодействовать с сообществом, необходимо зарегистрироваться.
Этот вопрос был отмечен
2 Ответы
7171 Представления

Hello, I am trying find a way to not store a couple character fields.  This field is used for processing information, but I do not want it to be stored on the actual database.  Right now I have the store=False attribute set on the field definition, but it still stores the value on the table.  I tried using the dummy field, but all it does is pass in False to the method that processes the information.  Right now, I clear the data from the column in the table after it's processed, but I would like to not store a column for this field at all.  Thank you

Аватар
Отменить
Лучший ответ

Attribute store in field doesn't designed that why (for osv.osv model). If your class inherit from osv.osv I think you can't do what you want to do. Have you consider using osv.osv_abstract?
 

Аватар
Отменить
Автор

I haven't heard of the osv.osv_abstract. What does that do?

it's AbstractModel (https://github.com/odoo/odoo/blob/9f214223ea1ebdb0b666ee41f14ea823453ec415/openerp/osv/osv.py#L32). Here 's inline documentation https://github.com/odoo/odoo/blob/9f214223ea1ebdb0b666ee41f14ea823453ec415/openerp/models.py#L5853-L5865

Лучший ответ

Hi Eric,

Just use the fields.function and make your character field not store into database.

for ex here I am going to make one 'note' field with type character and it will not store into database.

'note' : fields.function( _note_field, string="Note", type="char", size=128, store=False)

def _note_field(self, cr, uid, ids, context={})

    res = {}

    for id in ids:

    # your code for proceessed to get this field information

        res[id] = ' processed data'

    return res

By this way you will get your field with character type and it will not store into database. I hope it will help you.

Аватар
Отменить
Related Posts Ответы Просмотры Активность
4
сент. 24
21274
0
нояб. 16
3494
1
дек. 16
5025
4
дек. 24
30783
Odoo Table Name Решено
1
апр. 20
12727