Odoo电商产品详情页add_qty参数动态更新

问题描述 投票:0回答:1

我正在定制一个Odoo电子商务网站,我需要通过URL参数动态修改产品详细信息页面中的add_qty参数。我正在扩展 WebsiteSale 类来实现此目的。

这是我的代码片段:

class WebsiteSaleCustom(WebsiteSale):
    def _prepare_product_values(self, product, category, search, **kwargs):
        values = super()._prepare_product_values(product, category, search, **kwargs)
        values['add_qty'] = int(kwargs.get('add_qty', 1))
        return values

此解决方案在首次加载产品详细信息页面时按预期工作。但是,当尝试动态更新 add_qty 参数时,就会出现问题。

任何有关如何实现这一目标的见解或建议将不胜感激。谢谢您的帮助!

python odoo e-commerce odoo-16 odoo-website
1个回答
0
投票

要解决 Odoo 由于缓存而获取过时或不正确数据的相关问题,您可以在应用解决方案之前使用方法

request.env.registry.clear_cache()
。此方法会清除缓存,确保 Odoo 获取最新数据。

from odoo.http import request
from odoo.addons.website_sale.controllers.main import WebsiteSale


class WebsiteSaleCustom(WebsiteSale):
    def _prepare_product_values(self, product, category, search, **kwargs):
        request.env.registry.clear_cache()
        values = super()._prepare_product_values(product, category, search, **kwargs)
        values['add_qty'] = int(kwargs.get('add_qty', 1))
        return values
最新问题
© www.soinside.com 2019 - 2024. All rights reserved.