Hi,
I been do some research on this site, but none works for me.
i am new to odoo 12.
i am not that familiar with js as well.
Thank you for sharing you time to help.
Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:
Hi,
I been do some research on this site, but none works for me.
i am new to odoo 12.
i am not that familiar with js as well.
Thank you for sharing you time to help.
I find the solution to this problem! If you want to replace the create button if you use project.project model.
1) Create some js script (static/src/js/task_list.js) with click listener for the button :
openerp.project = function (instance){
var QWeb = openerp.web.qweb;
_t = instance.web._t;
var self = this;
openerp.web.ListView.include({
load_list: function(data) {
this._super(data);
if (this.$buttons) {
this.$buttons.find('.oe_new_button').off().click(this.proxy('do_the_job')) ;
console.log('Save & Close button method call...');
}
},
do_the_job: function () {
this.do_action({
type: "ir.actions.act_window",
name: "Создание нового проекта",
res_model: "project.project",
views: [[false,'form']],
target: 'current',
view_type : 'form',
view_mode : 'form',
flags: {'form': {'action_buttons': true, 'options': {'mode': 'edit'}}}
});
return {
'type': 'ir.actions.client',
'tag': 'reload',
}
}
});
}2) After that create static/src/xml/project_button.xml with the template, which replaces "Create" button if use project.project model
<?xml version="1.0" encoding="UTF-8"?>
<template id="template" xml:space="preserve">
<t t-extend="ListView.buttons">
<t t-jquery="button.oe_list_add" t-operation="replace">
<button t-if="widget.model == 'project.project'" class="oe_button oe_new_button oe_highlight" type="button">Создать новый проект</button>
<button t-if="widget.model != 'project.project'" class="oe_button oe_list_add oe_highlight" type="button">Создать</button>
</t>
</t>
</template>3) After that add my js script in web.asset_backend (Create file project/views/project.xml)
<?xml version="1.0" encoding="utf-8"?>
<!-- vim:fdn=3:
-->
<openerp>
<data>
<template id="assets_backend" name="project assets" inherit_id="web.assets_backend">
<xpath expr="." position="inside">
<script type="text/javascript" src="/project/static/src/js/task_list.js"></script>
</xpath>
</template>
</data>
</openerp>4) And finally add in project/__openerp__.py section 'qweb' for static/src/xml/project_button.xml, 'js' for static/src/js/task_list.js and place file views/project.xml in 'data' section.
'data': [
'security/project_security.xml',
...
'views/project.xml',
],
'qweb': ['static/src/xml/project_button.xml',],
...
'js': 'static/src/js/task_list.js', And the button successful replace old button in project.project model.
It's seem the solution is in older odoo version.
Can you give me the solution in Odoo 12 up?
@pablo Escobar, You copied the answer from the reference link that I mentioned. What are you trying to prove here?
I can give u a reference which described well, that how we can add a button in tree view header.
HI Hilar,
Can you upgrade the solution to Odoo 12 up?
Am using the Odoo 12 and not familiar with openerp api in odoo 8
Thank you for you time.
I already mentioned this in answer, this is just a reference. You can follow the way they did.
Create an account today to enjoy exclusive features and engage with our awesome community!
Sign up| Related Posts | Replies | Views | Activity | |
|---|---|---|---|---|
|
|
1
Oct 19
|
3661 | ||
|
|
1
Apr 24
|
13882 | ||
|
|
1
Oct 19
|
7573 | ||
|
|
2
Jun 22
|
3253 | ||
|
|
2
Sep 20
|
6583 |