【问题标题】:Odoo - raise javascript warningOdoo - 引发 javascript 警告
【发布时间】:2016-01-15 10:32:39
【问题描述】:

如何在 Odoo 中引发 javascript 警告?

/addons/web_view_editor/static/src/js/view_editor.js中有一个例子:

this.do_warn(_t("The following fields are invalid :"), msg)

如何通过on_change方法调用类似的函数,例如在python中?

【问题讨论】:

    标签: javascript python openerp


    【解决方案1】:

    这个answer在类似的问题中指的是你可以return

    {
    'type': 'ir.actions.client',
    'tag': 'action_warn',
    'name': 'Warning',
    'params': {
       'title': 'Warning!',
       'text': 'Entered Quantity is greater than quantity on source.',
       'sticky': True
    }
    }
    

    像 ODOO 那样显示消息。希望对您有所帮助。

    【讨论】:

    • 就是这样。谢谢!
    【解决方案2】:

    Onchange 方法可以返回具有标准结构的字典,该字典将由 Web 客户端解释。 Here you can read the return format, in particular:

    Onchange 方法可以通过返回具有以下键之一的字典来显示错误和/或更改字段域/值:

    warning
    用于显示错误弹出窗口,例如用于提醒用户他插入的值无效。 该值应该是格式为 {'title': , 'message': } 的字典,其中将是错误弹出窗口的标题和错误消息。
    [...]

    所以你可以通过返回来引发一个警告对话框,例如:

    return {
        'warning': {
            'title': 'Invalid value',
            'message': 'The field percentage must be an integer between 0 and 100'
        }
    }
    

    您不能从 onchange 方法(这是后端 python 代码)调用和执行任意 javascript 函数,您只能使用返回字典与 webclient 交互。

    【讨论】:

    • 嘿,我实际上知道warning,但是我认为可以调用类似于未填写必填字段时出现的javascript警告。还是谢谢
    • 据我所知,至少在不更改/继承处理 onchange 返回值的 odoo 代码的情况下,您不能这样做,但我不推荐这样做。
    猜你喜欢
    • 2021-08-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-09
    • 2019-01-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多