微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

javascript – 可以在Odoo 8的约束函数中以编程方式刷新模型的视图吗?

我已经写了一个特定字段的约束,并且我想在约束失败时刷新日历的视图.

以下是我尝试过的代码

def _check_date_drag(self,cr,uid,ids,context=None):
        mom_obj = self.pool.get('mom.meeting')
    res = {}
    for item in self.browse(cr,ids):
        mom_ids = mom_obj.search(cr,[('meet_ref','=',item.number),('mdt','<',item.start_datetime)],context=context)
        if mom_ids:
            res = {
                  'view_type': 'form','view_mode': 'form','res_model': 'calendar.event','type': 'ir.actions.act_window','target': 'new',}
            return False and res
    return True



    _constraints = [

        (_check_date_drag,'MOM is already created for this calendar 
event! Kindly refresh the page to discard the changes!',['start_datetime']),]

如果约束失败(即返回False),我想刷新日历视图.

有任何想法的人请指导我一些想法
我想拖动(绿色箭头)会议事件

拖放后,将显示约束消息

当我点击确定按钮的警告消息时,事件不会移动到其原始位置

我想要日历重新加载,当我点击确定按钮

解决方法

您可以尝试以下方法之一(未测试):

1)添加一些javascript来刷新对话关闭视图.

2)捕获约束错误,并返回动作以显示相同的视图(基本上刷新页面).在上下文中传递错误信息,并使视图在上下文中显示错误.这样当执行由于错误而停止时,刷新页面就已经存在了.

希望对你有效.

原文地址:https://www.jb51.cc/js/154575.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐