Skip ke Konten
Menu
Pertanyaan ini telah diberikan tanda
1 Balas
8504 Tampilan

Hi, 

I am learning how to use the compute field under Odoo v8. The example in the docs looks clear and it seems pretty easy, but no mather what I do it doesn't seem to get triggered.

This is the most basic example I am testing which is not working for some reason:

        'total_units': fields.char(compute='_compute_total',string='Number of Units'),
    

    @api.one
    def _compute_total(self):
        print "Show this if triggered"
        self.total_units = 23

For this basic example I was looking to see a '23' on the total_units field, but nothing happens.

Shouldn't _compute_total be triggered each time the tree view is opened? What I am missing?

Any help will be appreciated,

Thanks

Avatar
Buang
Jawaban Terbai

Computed fields are triggered on save (DB write).

Avatar
Buang
Penulis

Hi, thanks. I read in the docs that "computed fields are not stored by default, they are computed and returned when requested. Setting store=True will store them in the database and automatically enable searching" So my understanding was that I can run a compute field if I need results "on the fly". if this is not the case, what type of field can I use to get results on the fly under V8? Thanks so much for your help

You can overwrite read method of your model and change return value for desired field.

Post Terkait Replies Tampilan Aktivitas
1
Mar 15
4315
3
Sep 24
1482
0
Des 23
1395
0
Okt 21
3006
1
Jul 21
3774