I have created a client action which shows list view (Using owl template), now on click of each item i want to open another owl template so how can pass record id to fetch data in it?
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
- 客户关系管理
- e-Commerce
- 会计
- 库存
- PoS
- Project
- MRP
此问题已终结
Hi,
Define a method in your JavaScript file: odoo.define('your_module_name.your_js_file', function (require) {
"use strict";
var core = require('web.core');
var Widget = require('web.Widget');
var _t = core._t;
var YourWidget = Widget.extend({
template: 'YourTemplate',
events: {
'click .list-item': '_onListItemClick',
},
_onListItemClick: function (ev) {
var recordID = $(ev.currentTarget).data('record-id');
this.do_action({
name: _t("Open Record"),
type: 'ir.actions.act_window',
res_model: 'your.model.name',
res_id: recordID,
views: [[false, 'form']],
target: 'current',
});
},
});
return YourWidget;
});
Pass Record ID from the template:<t t-name="YourTemplate">
<div class="list-item" t-att-data-record-id="record.
<!-- Your list item content here -->
</div>
</t>
Hope it helps
相关帖文 | 回复 | 查看 | 活动 | |
---|---|---|---|---|
|
0
8月 24
|
874 | ||
|
5
3月 25
|
3162 | ||
|
1
2月 25
|
1556 | ||
|
1
12月 24
|
4403 | ||
|
0
11月 24
|
1804 |