在Odoo 11中覆盖网站模块的索引方法

时间:2018-03-03 19:11:53

标签: python-3.x odoo odoo-11

我试图在odoo 11中覆盖网站模块中的索引方法。

以下是我的代码

from odoo import http
from addons.website.controllers.main import Website


class Home(Website):

@http.route(['/', '/index', '/home'], type='http', website=True, auth='public')
def index(self, **kw):
    super(Website, self).index(**kw)
    return http.request.render('my_website.home')

我在my_website中创建了一个名为home的新模板。 但是当我去 http://localhost:8069 时,它正在为带有页眉和页脚的网站加载标准的odoo模板。 当我转到http://localhost:8069/indexhttp://localhost:8069/home时,它会抛出404错误。它没有把我的新模板带回家。

我已经提到了这个问题How to change default page of odoo with other webcontroller odoo 9.0但是没有用。

1 个答案:

答案 0 :(得分:1)

问题解决了。您必须从 odoo.addons 导入,而不是从插件导入。

from odoo.addons.web.controllers.main import Website


class MyHome(Website):

@http.route(['/', '/index', '/home'], type='http', website=True, auth='public')
def index(self, **kw):
    return http.request.render('my_website.home')

然后使用您的模板进行渲染。