documentation/content/developer/howtos.rst

86 lines
2.3 KiB
ReStructuredText
Raw Permalink Normal View History

:show-content:
:hide-page-toc:
=============
How-to guides
=============
[REF][MOV] documentation apocalypse Prior to this commit, the Odoo documentation was mainly split between two repositories: odoo/odoo/doc and odoo/documentation-user. Some bits of documentation were also hosted elsewhere (e.g., wiki, upgrade, ...). This was causing several problems among which: - The theme, config, Makefile, and similar technical resources had to be duplicated. This resulted in inconsistent layout, features, and build environments from one documentation to another. - Some pages did not fit either documentation as they were relevant for both users and developers. Some were relevant to neither of the two (e.g., DB management). - Cross-doc references had to be absolute links and they broke often. - Merging large image files in the developer documentation would bloat the odoo/odoo repository. Some contributions had to be lightened to avoid merging too many images (e.g., Odoo development tutorials). - Long-time contributors to the user documentation were chilly about going through the merging process of the developer documentation because of the runbot, mergebot, `odoo-dev` repository, etc. - Some contributors would look for the developer documentation in the `odoo/documentation-user` repository. - Community issues about the user documentation were submitted on the `odoo/odoo` repository and vice-versa. Merging all documentations in one repository will allow us to have one place, one theme, one work process, and one set of tools (build environment, ...) for all of the Odoo docs. As this is a good opportunity to revamp the layout of the documentation, a brand new theme replaces the old one. It features a new way to navigate the documentation, centered on the idea of always letting the reader know what is the context (enclosing section, child pages, page structure ...) of the page they are reading. The previous theme would quickly confuse readers as they navigated the documentation and followed cross-application links. The chance is also taken to get rid of all the technical dangling parts, performance issues, and left-overs. Except for some page-specific JS scripts, the Odoo theme Sphinx extension is re-written from scratch based on the latest Sphinx release to benefit from the improvements and ease future contributions. task-2351938 task-2352371 task-2205684 task-2352544 Closes #945
2021-04-30 17:40:29 +07:00
.. toctree::
:titlesonly:
howtos/scss_tips
howtos/javascript_field
howtos/javascript_view
howtos/javascript_client_action
howtos/web_services
howtos/company
howtos/create_reports
howtos/accounting_localization
howtos/translations
howtos/website_themes
howtos/connect_device
howtos/upgrade_custom_db
.. cards::
.. card:: Write lean easy-to-maintain CSS
:target: howtos/scss_tips
Follow this guide to keep the technical debt of your CSS code under control.
.. card:: Customize a field
:target: howtos/javascript_field
Learn how to customize field components in the Odoo JavaScript web framework.
.. card:: Customize a view type
:target: howtos/javascript_view
Learn how to customize view types in the Odoo JavaScript web framework.
.. card:: Create a client action
:target: howtos/javascript_client_action
Learn how to create client actions in the Odoo JavaScript web framework.
.. card:: Web services
:target: howtos/web_services
Learn more about Odoo's web services.
.. card:: Multi-company guidelines
:target: howtos/company
Learn how to manage multiple companies and deal with the records-related specificities of a
multi-company environment.
.. card:: Create customized reports
:target: howtos/create_reports
Learn how to create customized reports with SQL Views.
.. card:: Accounting localization
:target: howtos/accounting_localization
Learn how to build a localization module, create bank operation models and dynamic reports.
.. card:: Translating modules
:target: howtos/translations
Learn how to provide translation abilities to your module.
.. card:: Website themes
:target: howtos/website_themes
Learn how to customize your website by creating a custom theme.
.. card:: Connect with a device
:target: howtos/connect_device
Learn how to enable a module to detect and communicate with an IoT device.
.. card:: Upgrade a customized database
:target: howtos/upgrade_custom_db
Learn how to upgrade a customized database, as well as the code and data of its custom modules.