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

希望对你有效.

相关文章

前言 做过web项目开发的人对layer弹层组件肯定不陌生,作为l...
前言 前端表单校验是过滤无效数据、假数据、有毒数据的第一步...
前言 图片上传是web项目常见的需求,我基于之前的博客的代码...
前言 导出Excel文件这个功能,通常都是在后端实现返回前端一...
前言 众所周知,js是单线程的,从上往下,从左往右依次执行,...
前言 项目开发中,我们可能会碰到这样的需求:select标签,禁...