Odoo is a powerful open source platform for business applications. On top of it, a suite of closely integrated applications was built, covering all business areas from CRM and sales to stocks and accounting. Odoo has a dynamic and growing community around it, constantly adding features, connectors, and additional business apps.
Odoo 10 Development Essentials provides a step-by-step guide to Odoo development, allowing readers to quickly climb the learning curve and become productive in the Odoo application platform.
The first two chapters aim to get the reader comfortable with Odoo, learn the basic techniques to set up a development environment, and get familiar with the module development approach and workflow.
Each of the following chapters explains in detail the key development topics needed for Odoo addon module development, such as inheritance and extensions, data files, models, views, business logic, and so on.
Finally, the last chapter explains what to consider when deploying your Odoo instance for production use.
Chapter 1, Getting Started with Odoo Development, starts with the setup of a development environment, installing Odoo from source, and learning how to manage Odoo server instances.
Chapter 2, Building Your First Odoo Application, guides us through the creation of our first Odoo module, covering all the different layers involved: models, views, and business logic.
Chapter 3, Inheritance – Extending Existing Applications, explains the available inheritance mechanisms and how to use them to create extension modules that add or modify features on other existing modules.
Chapter 4, Module Data, covers the most commonly used Odoo data file formats (XML and CSV), the external identifier concept, and how to use data files in modules and data import/export.
Chapter 5, Models – Structuring Application Data, discusses the Model layer in detail, with the types of models and fields available, including relational and computed fields.
Chapter 6, Views – Designing the User Interface, covers the View layer, explaining in detail the several types of views and all the elements that can be used to create dynamic and intuitive user interfaces.
Chapter 7, ORM Application Logic – Supporting Business Processes, introduces programming business logic on the server side, explores the ORM concepts and features, and also explains how to use wizards for more sophisticated user interaction.
Chapter 8, Writing Tests and Debugging Code, discusses how to add automated tests to addon modules, and techniques to debug module business logic.
Chapter 9, QWeb and Kanban Views, goes over the Odoo QWeb templates, using it to create rich Kanban boards.
Chapter 10, Creating QWeb Reports, discusses using the QWeb based report engine, and everything needed to generate printer-friendly PDF reports.
Chapter 11, Creating Website Frontend Features, introduces Odoo website development, including web controller implementations and using QWeb templates to build frontend web pages.
Chapter 12, External API – Integrating with Other Systems, explains how to use Odoo server logic from external applications, and introduces a popular client programming library that can also be used as a command-line client.
Chapter 13, Deployment Checklist – Going Live, shows us how to prepare a server for production prime time, explaining what configuration should be taken care of and how to configure an Nginx reverse proxy for improved security and scalability.