2016-12-17 9 views
0

Я создал новый webcontroller с определенной функциональностью, и я хочу, чтобы этот webcontroller был домашней страницей odoo 9.0.Как изменить страницу по умолчанию с odoo с другим webcontroller odoo 9.0

Я попытался поставить @http.route('/', type='http', auth='public', website=True) в main.py моего пользовательского файла webcontroller в качестве маршрута, но все же перенаправляет его на домашнюю страницу по умолчанию.

Но если я разместил url как @http.route('/index', type='http', auth='public', website=True), страница работает нормально.

Так что мой вопрос - это лучший способ заменить существующую домашнюю страницу odoo с помощью настраиваемого контроллера или модуля.

ответ

0
# -*- coding: utf-8 -*- 
from openerp import http 
from openerp.addons.website.controllers.main import Website 

class Website(Website): 
    @http.route(auth='public') 
    def index(self, data={},**kw): 
     super(Website, self).index(**kw) 
     return http.request.render('<your_addon>.<your_template_id>', data) 
+0

Phillip, вы потрясающий. Меня устраивает. Домашняя страница заменила мой контент сейчас. Я также заметил, что этот сайт многоязычен, когда я меняю язык, он снова перенаправляется на предыдущую домашнюю страницу, а URL-адрес - «fr_FR/page/homepage». Есть ли что-то, что нам нужно сделать для многоязычного URL-адреса? Пожалуйста, предложите. – Prawez

+0

Извините @ Prawez Я сам не использовал многоязыковые функции. Я думаю, это было бы очень похоже. Что вы имели в виду для пути, ведущего к альтернативным языкам? –

+0

Я попытался так же переопределить ** @ http.route ('/ page/', type = 'http', auth = "public", website = True) ** метод от модуля веб-сайта до моего настраиваемого модуля , но это дает мне 500 внутренних ошибок каждый раз. Есть ли другой способ переопределить этот метод? – Prawez