Skip to Content
Menu
This question has been flagged
2 Replies
2832 Views

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
Discard
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
Discard
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
Discard
Related Posts Replies Views Activity
1
Nov 22
5752
0
Aug 20
3554
4
Aug 20
8262
3
Nov 23
15311
3
Nov 24
21069