Book Image

Odoo 11 Development Cookbook - Second Edition - Second Edition

Book Image

Odoo 11 Development Cookbook - Second Edition - Second Edition

Overview of this book

Odoo is a full-featured open source ERP with a focus on extensibility. The flexibility and sustainability of open source are also a key selling point of Odoo. It is built on a powerful framework for rapid application development, both for back-end applications and front-end websites. Version 11 offers better usability and speed: a new design (as compared to the current Odoo Enterprise version) and a mobile interface. The book starts by covering Odoo installation and administration and Odoo Server deployment. It then delves into the implementation of Odoo modules, the different inheritance models available in Odoo. You will then learn how to define access rules for your data; how to make your application available in different languages; how to expose your data models to end users on the back end and on the front end; and how to create beautiful PDF versions of your data. By the end of the book, you will have a thorough knowledge of Odoo and will be able to build effective applications by applying Odoo development best practices
Table of Contents (18 chapters)

Adding security access to models

It's common for addon modules to add new models. For example, in the previous chapter, we had examples adding a new Library Books model.

It is easy to miss the creation of security access for new models defined in an addon module if you test it using the convenient admin user, because admin bypasses all security checks.

However, models with no ACLs will trigger a warning log message on loading, informing about the missing ACL definitions: The model library.book has no access rules, consider adding one. To avoid that, you should watch for such messages during tests, and before publishing your code, ensure that you run tests with the demo user rather than admin.

So, for new models to be usable by non-admin users, we need to define their access control lists so that Odoo knows how it should access them and what operations each user group should...