From 9d2d9a3528c7cf595c5f1d040ebf13748497add8 Mon Sep 17 00:00:00 2001 From: Romain Derie Date: Tue, 12 Dec 2017 15:20:55 +0100 Subject: [PATCH] [FIX] website: edit website.page's menu URL not saving Before this commit, editing a website.menu (linked to a website.page (m2o)) would not save the URL on the website.page record but only on the website.menu. But since the URL retrieved to display the website navbar is: 1. The website.page url if the menu has a page_id 2. The website.menu url otherwise It would never get the edited URL stored on website.menu --- addons/website/models/website.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/addons/website/models/website.py b/addons/website/models/website.py index 520e96c66d0..a4848313a9c 100644 --- a/addons/website/models/website.py +++ b/addons/website/models/website.py @@ -866,11 +866,14 @@ class Menu(models.Model): new_menu = self.create({'name': menu['name']}) replace_id(mid, new_menu.id) for menu in data['data']: + menu_id = self.browse(menu['id']) + if menu_id.page_id: + menu_id.page_id.write({'url': menu['url']}) # if the url match a website.page, set the m2o relation page = self.env['website.page'].search([('url', '=', menu['url'])], limit=1) if page: menu['page_id'] = page.id - self.browse(menu['id']).write(menu) + menu_id.write(menu) return True