odoo-040 odoo17前端的js方法调用后端py方法action报错

文章目录

问题描述

在前端的kanban视图上添加了几个自定义按钮,按钮点击可以跳转到对应的tree视图,在写按钮调用方法的时候报错如下:

前端调用后端action报错:

action.views = [...action.views.map((v) => [v[0], v[1] === "tree" ? "list" : v[1]])]; // manipulate a copy to keep cached action unmodified

梳理写法

xml写法
<div class="col-sm-12 col-md-6 col-lg-4 col-xl-4 col-xxl-3" t-on-click="openQuant" quant="product">
	 <a href="#"class="btn btn-primary w-100 h-100 border-0 rounded-0 text-capitalize text-break fw-normal p-3">
	     库存
	 </a>
</div>
前端方法
async openQuant(ev) {
   const quant = ev.currentTarget.getAttribute("quant");
   const action = await this.orm.call("stock.picking.type", "open_action_stock_quant",
                                   [[]], {'context': {'quant': quant}});
   this.action.doAction(action);
    }
后端action的写法
action= {
    'type': 'ir.actions.act_window',
    'res_model': 'stock.quant',
    'view_mode': 'tree',
    'views': [(False, 'list'), (False, 'form')],
}

错误解释

报错的一个原因是后端的action必须有个views这个现实的字段设置才行,哪怕id是False都可以的。

相关推荐
放逐者-保持本心,方可放逐25 分钟前
微信小程序=》基础=》常见问题=》性能总结
前端·微信小程序·小程序·前端框架
毋若成2 小时前
前端三大组件之CSS,三大选择器,游戏网页仿写
前端·css
红中马喽3 小时前
JS学习日记(webAPI—DOM)
开发语言·前端·javascript·笔记·vscode·学习
Black蜡笔小新4 小时前
网页直播/点播播放器EasyPlayer.js播放器OffscreenCanvas这个特性是否需要特殊的环境和硬件支持
前端·javascript·html
秦jh_4 小时前
【Linux】多线程(概念,控制)
linux·运维·前端
蜗牛快跑2135 小时前
面向对象编程 vs 函数式编程
前端·函数式编程·面向对象编程
Dread_lxy5 小时前
vue 依赖注入(Provide、Inject )和混入(mixins)
前端·javascript·vue.js
涔溪5 小时前
Ecmascript(ES)标准
前端·elasticsearch·ecmascript
榴莲千丞6 小时前
第8章利用CSS制作导航菜单
前端·css
奔跑草-6 小时前
【前端】深入浅出 - TypeScript 的详细讲解
前端·javascript·react.js·typescript