Skip to Content
Menu
This question has been flagged
2 Replies
3750 Zobrazenia

Hi,

I need to override the function of product view in Odoo website shop for add some additional information to the product page.How can i override the corresponding function.Expecting quick response.

Thanks

Avatar
Zrušiť
Best Answer

Hi,

To add more information to corresponding page(products) you have to override the corresponding controller method and pass the necessary information to the template.

For overriding an existing controller see this video: How To Inherit Existing Controller in Odoo

See this example in website_sale_delivery module in which a controller defined in website_sale module is inherited and passing new values ,


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


class WebsiteSaleDelivery(WebsiteSale):

@http.route(['/shop/payment'], type='http', auth="public", website=True)
def payment(self, **post):
order = request.website.sale_get_order()
carrier_id = post.get('carrier_id')
if carrier_id:
carrier_id = int(carrier_id)
if order:
order._check_carrier_quotation(force_carrier_id=carrier_id)
if carrier_id:
return request.redirect("/shop/payment")

return super(WebsiteSaleDelivery, self).payment(**post)

File: https://github.com/odoo/odoo/blob/13.0/addons/website_sale_delivery/controllers/main.py

Thanks

Avatar
Zrušiť
Best Answer

Hi,

Try the code below.

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

class YourClassName(WebsiteSale):
@http.route()
def product(self, product, category='', search='', **kwargs): res = super(YourClassName, self).product(product, category, search)
# Type Your required codes here
return res

For knowing more about the controllers and website customisation visit the following blogs

Odoo website customization

Controllers in odoo

Thanks and regards

Avatar
Zrušiť
Related Posts Replies Zobrazenia Aktivita
1
nov 22
7363
0
aug 20
4584
4
aug 20
9295
3
nov 23
17374
3
nov 24
25021