Hi all,
Here i want to inherit shopping cart controllers in my custom module?
I know inherit models, views, objects but i dont know iherit controllers. please let me know this...
Thanks in advance
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
Hi all,
Here i want to inherit shopping cart controllers in my custom module?
I know inherit models, views, objects but i dont know iherit controllers. please let me know this...
Thanks in advance
Say you would like to inherit the MailTrackingController from the OCA module mail_tracking. Here is how you do it.
I know that the mail_tracking module is not in the same directory as the odoo built-in addons. Still the below works(of course your module depends on the other module in the manifest file.)
# import importlib so as to use it
# to import the module that contains the
# controller we are to inherit
import importlib
# use importlib to import the module
# that contains the controller we need to inherit
mail_tracking = importlib.import_module('odoo.addons.mail_tracking')
# create the inheriting controller
class MailTrackingController(mail_tracking.
controllers.main.
MailTrackingController):
def mail_tracking_open(self, db, tracking_email_id, token=False, **kw):
"""
Some doc sting
"""
response = super(MailTrackingController, self).\
mail_tracking_open(db, tracking_email_id, token, **kw)
.
.
.
thank you @Kareem Abuzaid, your answer is very explanatory.
Hi,
For inheriting an existing controller in odoo, please do like this,
from odoo import http
from odoo.http import request
from odoo.addons.website_sale.controllers.main import WebsiteSale
class WebsiteSaleInherit(WebsiteSale):
@http.route([
'''/shop''',
'''/shop/page/<int:page>''',
'''/shop/category/<model("product.public.category", "[('website_id', 'in', (False, current_website_id))]"):category>''',
'''/shop/category/<model("product.public.category", "[('website_id', 'in', (False, current_website_id))]"):category>/page/<int:page>'''
], type='http', auth="public", website=True)
def shop(self, page=0, category=None, search='', ppg=False, **post):
res = super(WebsiteSaleInherit, self).shop(page=0, category=None, search='', ppg=False, **post)
print("Inherited ....", res)
return res
Full tutorial of the same: How To Inherit Existing Controller in Odoo
Thanks
You can refer to following forum question:
https://www.odoo.com/forum/help-1/question/writing-controllers-in-openerp-modules-18656
Hope this helps !!.
関連投稿 | 返信 | ビュー | 活動 | |
---|---|---|---|---|
|
0
4月 23
|
1227 | ||
|
2
6月 22
|
3862 | ||
|
0
9月 18
|
3141 | ||
|
0
12月 16
|
3462 | ||
|
0
11月 19
|
3238 |