Adding a monetary field to a Model

Odoo has special support for monetary values related to a currency. Let's see how to use it in a Model.

Note

The Monetary field was introduced in Odoo 9.0 and is not available in previous versions. If you are using Odoo 8.0, the float field type is your best alternative.

Getting ready

We will reuse the my_module addon module from Chapter 3, Creating Odoo Modules.

How to do it…

The monetary field needs a complementary currency field to store the currency for the amounts.

The my_module already has a models/library_book.py defining a basic Model. We will edit this to add the needed fields:

  1. Add the field to store the currency that is to be used:
    class LibraryBook(models.Model):
        # ...
        currency_id = fields.Many2one(
     'res.currency', ...

Get Odoo Development Cookbook now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.