Ir al contenido
Menú
Se marcó esta pregunta
2 Respuestas
3718 Vistas

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
Descartar
Mejor respuesta

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
Descartar
Mejor respuesta

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
Descartar
Publicaciones relacionadas Respuestas Vistas Actividad
1
nov 22
7293
0
ago 20
4502
4
ago 20
9244
3
nov 23
17300
3
nov 24
24888