From 7b8859a3e8f48857ef87d9b5f3679cacad470f2d Mon Sep 17 00:00:00 2001 From: Ivan Office Date: Mon, 2 Oct 2023 06:44:10 +0800 Subject: [PATCH] update multi website --- app_website_blog_editor/models/__init__.py | 1 + app_website_blog_editor/models/ir_ui_view.py | 16 ++++++++++++++++ app_website_blog_editor/models/website_page.py | 2 +- 3 files changed, 18 insertions(+), 1 deletion(-) create mode 100644 app_website_blog_editor/models/ir_ui_view.py diff --git a/app_website_blog_editor/models/__init__.py b/app_website_blog_editor/models/__init__.py index 0c33e961..78a2e3b9 100644 --- a/app_website_blog_editor/models/__init__.py +++ b/app_website_blog_editor/models/__init__.py @@ -26,5 +26,6 @@ from . import blog_tag_category from . import blog_tag from . import blog_blog from . import blog_post +from . import ir_ui_view from . import website_page from . import res_config_settings diff --git a/app_website_blog_editor/models/ir_ui_view.py b/app_website_blog_editor/models/ir_ui_view.py new file mode 100644 index 00000000..7ca3d54a --- /dev/null +++ b/app_website_blog_editor/models/ir_ui_view.py @@ -0,0 +1,16 @@ +# -*- coding: utf-8 -*- + +from odoo import api, fields, models + + +class IrUiView(models.Model): + _inherit = 'ir.ui.view' + + def write(self, vals): + # 处理强制全局, Create时不管 + for view in self: + if len(view.page_ids) == 1: + page = view.page_ids[0] + if page.is_force_all: + self = self.with_context(no_cow=1) + return super(IrUiView, self).write(vals) diff --git a/app_website_blog_editor/models/website_page.py b/app_website_blog_editor/models/website_page.py index e5f63a7c..b16be104 100644 --- a/app_website_blog_editor/models/website_page.py +++ b/app_website_blog_editor/models/website_page.py @@ -7,7 +7,7 @@ class WebsitePage(models.Model): _inherit = 'website.page' is_force_all = fields.Boolean('Force All Website', default=False, - help='If check, the page would use to all website, even u change.') + help='If check, the page would use to all website, even u change.\n Important, The page url must be uniq in all website') def write(self, vals): # 处理强制全局, Create时不管