gpt4 book ai didi

javascript - 如何在 Odoo 中的 JavaScript 上扩展此功能(编辑按钮)?

转载 作者:行者123 更新时间:2023-12-03 05:55:22 28 4
gpt4 key购买 nike

我想创建一个在某些条件下控制编辑按钮的模块。我在js中尝试了以下代码,但没有效果。所以我想知道如何在js中扩展一个函数。

formView.include({
init:function(){

var edits = new Model('sale.order');
edits.query(['validity_date']);
console.log(validity_date)
},
on_button_edit: function(){
this._super();

最佳答案

你可以在js文件中写这样的东西。我写了一些例子来帮助你。

openerp.custom_edit_button = function (instance) {
var _t = instance.web._t;

instance.web.FormView.include({
init: function() {
console.log('JS loaded')
this._super.apply(this, arguments);
},

to_edit_mode: function(){
// examples of useful methods
var field_values = this.get_fields_values();
var ids = this.get_selected_ids();
var id = field_values['id'];
var date = field_values['date'];
var model = this.model;

console.log(field_values)
console.log(ids)
console.log(id)
console.log(model)
console.log(date)
console.log(Date.today())

date_to_compare = new Date(date);
console.log(date_to_compare)

if(date_to_compare < Date.today()){
error = this.error;
var QWeb = instance.web.qweb;
var dialog = new instance.web.Dialog(this, {
title: _t("Set new expiry date"),
width: '30%',
size: 'medium',
/*dialogClass: 'oe_act_window',*/
buttons: [
{ text: _t("OK"), click: function() { self.set_new_expiry_date(); }},
{ text: _t("Close"), click: function() { dialog.close(); return; }
},
],
}, QWeb.render('custom_edit_button.expiry_date_form', {error: error})).open();

}

this._super();
}
});
}

因此,如果到期日期已过去,表单似乎会对其进行更改。您还必须定义方法 set_new_expiry_date。另一方面,您必须添加此模板或类似的内容来显示表单。将文件添加到 __openerp__.py

的 qweb 部分
<templates xml:space="preserve">
<div t-name="custom_edit_button.expiry_date_form" >
<div class="form-group">
<label for="date" class="control-label">New expiry date:</label>
<input name="date" class="form-control"/>
</div>
</div>
</templates>

请注意,示例中我的模块名称为 custom_edit_button

关于javascript - 如何在 Odoo 中的 JavaScript 上扩展此功能(编辑按钮)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39951929/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com