This commit implements a way to expose any model publicly on the website. Both manual and existing models can create such pages called 'Model Pages'. A manual model is a model that has been created by the user at runtime, via the technical menu, via studio, or with an xml declaration. The main interface to easily create such page is in Studio, in the tab Website Integration. But a partner or developer could easily import those without studio installed. That's the reason most of the code to handle the display of such pages is present in the website module directly. The listing can handle two display modes (Grid or List). Once the user changes the display mode, the latest value is set in the session to be remembered for the next visit of the page. A default_layout can be set and is customizable in the website editor or from the backend of Website. This value is linked to the page to display, so each listing page can use a different layout by default. The route on which the models are exposed is: "/model/<string:page_name_slugified>", With the derived routes: "/model/<string:page_name_slugified>/page/<int:page_number>", "/model/<string:page_name_slugified>/<string:record_slug>" task-id-3231144 Part-of: odoo/odoo#130544 Co-authored-by: Florent Dardenne (dafl) <dafl@odoo.com> Co-authored-by: Luca Vitali (luvi) <luvi@odoo.com>
21 lines
635 B
Python
21 lines
635 B
Python
# -*- coding: utf-8 -*-
|
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
|
|
|
from . import test_controller_args
|
|
from . import test_custom_snippet
|
|
from . import test_error
|
|
from . import test_fuzzy
|
|
from . import test_image_upload_progress
|
|
from . import test_is_multilang
|
|
from . import test_media
|
|
from . import test_multi_company
|
|
from . import test_page
|
|
from . import test_performance
|
|
from . import test_qweb
|
|
from . import test_redirect
|
|
from . import test_reset_views
|
|
from . import test_session
|
|
from . import test_settings
|
|
from . import test_views_during_module_operation
|
|
from . import test_website_controller_page
|