
This commit rework the entire JavaScript tutorial series with the
following improvements:
- Each chapter is now designed to be independent, allowing learners to
follow any chapter without the necessity of completing previous ones.
- Each chapter has been transformed into a standalone module, enabling
learners to create small projects from scratch within each chapter.
- The screenshots/text/code have been updated for Odoo 17.
Currently we have 5 chapters:
- Discover Chapter 1 - Owl Components: This chapter allows to learn the
Owl framework in the `awesome_owl` module.
- Discover Chapter 2 - Build a dashboard: This chapter allows to grasp
the basic of the web framework by building a dashboard in the
`awesome_dashboard` module.
- Master Chapter 1 - Build a clicker game: This chapter allows to grasp
the web framework by building a clicker game in the `awesome_clicker`
module.
- Master Chapter 2 - Create a gallery view: This chapter allows to learn
how to create a new view type. The new view is a gallery of records
pictures. It can be done in the `awesome_gallery` module.
- Master Chapter 3 - Customize a kanban view: This chapter allows to
learn to customize a kanban view by implementing a list of customer in
the side of a kanban view. This can be done in the `awesome_kanban`
module.
The chapter on creating and customizing fields is deleted for now and
will be completely rewritten in a near future.
The chapter on testing is deleted, how-to guides will be written to
cover this subject.
The solutions for all exercises has been done for v17, the goal by
merging the new tutorial is to have this new branch structure in
`odoo/tutorials`:
- 16.0
- 16.0-solutions
- 17.0
- 17.0-discover-js-framework-solutions
- 17.0-master-odoo-web-framework-solutions
- master <-- default branch, starting point for all addons
- master-discover-js-framework-solutions
- master-master-odoo-web-framework-solutions
closes odoo/documentation#6980
Task-id: 3623595
X-original-commit: 3d4a275196
Signed-off-by: Géry Debongnie <ged@odoo.com>
Signed-off-by: Florent Dardenne (dafl) <dafl@odoo.com>
60 lines
2.7 KiB
ReStructuredText
60 lines
2.7 KiB
ReStructuredText
:show-content:
|
|
|
|
=============================
|
|
Master the Odoo web framework
|
|
=============================
|
|
|
|
.. toctree::
|
|
:titlesonly:
|
|
:glob:
|
|
|
|
master_odoo_web_framework/*
|
|
|
|
This tutorial is designed for those who have completed the :doc:`discover_js_framework` tutorial and
|
|
are looking to deepen their knowledge of the Odoo web framework. It is organized in four independant
|
|
projects, each focusing on different features of Odoo.
|
|
|
|
.. note::
|
|
|
|
Each of these chapters can be done independantly, in any order. Also, be aware that some of them
|
|
cover a lot of material, so they may be quite long.
|
|
|
|
The first project is about building a `clicker game <https://en.wikipedia.org/wiki/Incremental_game>`_.
|
|
While working on it, you will learn various aspects of the web framework: systray, command palette,
|
|
dialogs, notifications, customizing existing components and much more.
|
|
|
|
The second project is focused on an important category of components: fields. Field components
|
|
represent the value of a field for a record, they appear in many places in the web client: in form
|
|
views, obviously, but also in kanban and list views, and may even be used alone, without a view.
|
|
Due to their importance, it makes sense to learn how to create and manipulate such components.
|
|
|
|
In the context of the web framework, views usually refers to the javascript implementation of a
|
|
component that represents one or many records, depending on a description (`ir.ui.view`). Such
|
|
components are actually quite complicated and usually requires various sub systems (a renderer,
|
|
a model, a controller, a arch parser, ...). In chapter 3, we create a new view from scratch to
|
|
represent a list of images.
|
|
|
|
Finally, the last project in chapter 4 is about customizing an existing view (a kanban view) by
|
|
adding a search panel on its left. It is interesting to see how one can take existing code, and
|
|
modify it to suit our needs. Also, it is a realistic project, that will feature many common issues
|
|
that arises while working on Odoo.
|
|
|
|
|
|
.. _tutorials/master_odoo_web_framework/setup:
|
|
|
|
Setup
|
|
=====
|
|
|
|
#. Clone the `official Odoo tutorials repository <https://github.com/odoo/tutorials>`_ and switch to
|
|
the branch `{CURRENT_MAJOR_BRANCH}`.
|
|
#. Add the cloned repository to your :option:`--addons-path <odoo-bin --addons-path>`.
|
|
#. Start a new Odoo database and install the modules for each chapter that you want to work on:
|
|
`awesome_clicker` (for chapter 1), `awesome_fields` (for chapter 2), `awesome_gallery` (for chapter 3) or `awesome_kanban` (for chapter 4).
|
|
|
|
Content
|
|
=======
|
|
|
|
- :doc:`master_odoo_web_framework/01_build_clicker_game`
|
|
- :doc:`master_odoo_web_framework/02_create_gallery_view`
|
|
- :doc:`master_odoo_web_framework/03_customize_kanban_view`
|