The menu tree

As we have seen, a description of a database application contains models, tables, layouts and actions. But one important piece is missing: the main menu.

The main menu defines how the different functionalities of an application should be presented to the user.

The application developer must decide how to organize the different actors and actions of her application into a "menu structure".

This menu structure defines another level of grouping (into menu groups).

Standard items of a main menu

lino.core.site.Site.setup_menu() lino.core.site.Site.top_level_menus

The Main menu

setup_main_menu

The Configuration menu

setup_config_menu

The Explorer menu

setup_explorer_menu

Introduction to menu groups

The different installed apps (identified by their app_label) are one way to group your database models into different "modules". But this grouping almost never exactly matches how the users would modularize their application.

TODO: write more about it.