Как отобразить диалог с предупреждением от контроллера в Odoo? - PullRequest
0 голосов
/ 20 марта 2020

Можно ли отобразить предупреждающее сообщение при переопределении функции контроллера? Вот код, который у меня есть:

raise Warning(_('Entered Quantity is greater than quantity on source.'))
return super(CheckCart, self).cart(**post)

Я хочу отобразить шаблон корзины, но также выдает предупреждение, но получаю следующее:

500: Внутренняя ошибка сервера Ошибка Сообщение об ошибке: («Введенное количество больше, чем количество в источнике.», «»)

Traceback

Без чего-либо еще.

Ответы [ 2 ]

1 голос
/ 20 марта 2020

Файл контроллера.

request.render("custom_module_name.redirect_fail_page", {})

XML Файл.

<template id="redirect_fail_page" name="Failure Code Page">
    <div>
          <span>Failed</span>
    </div>
    <script>
        setTimeout(function(){
            window.location.href = '/';
        }, 1100)
    </script>
</template>

Здесь вы можете использовать запрос. рендеринга

0 голосов
/ 20 марта 2020

Вы можете сделать это так, как называется Json Контроллер был основан на logi c , вернуть значение и на js проверьте, удовлетворено ли значение, затем с помощью Диалог вы можете поднять предупреждение .

В Py File,

@http.route(['/custom/url'], type='json', auth="public", website=True)
def checkout_custom(self, **post):
# Logic Based on the that return True/False.

Вкл JS Файл,

var ajax = require('web.ajax');
var Dialog = require('web.Dialog');
ajax.jsonRpc("/custom/url", 'call', {}).then(function(data) {
    if (data) {
        var dialog = new Dialog(this, {
        size: 'medium',
        $content: _t("<div style='font-size:14px;font-family:Helvetica, Arial, sans-serif;'>Warning Message.</div>"),
        buttons: [{
            text: _t('Ok'),
            classes: "btn-primary",
            close: true
        }],
    }).open();
} else {
    // Process
}});

Спасибо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...