私は正常にフォームビューのヘッダーまたはツリービューの行にボタンを追加できますが、私はOdoo 8の "作成"ボタンと "インポート"ボタンの近くのツリービューヘッダーにカスタムボタンを追加したいと思います。「作成」ボタンと「インポート」ボタンの近くでツリービューのヘッダーにボタンを追加する方法Odoo 8?
答えて
私は私の問題の解決策を見つけます!私はproject.projectモデルを使用する場合、私は作成ボタンを置き換えます。
1)私は(いくつかのjsスクリプトを作成静的/ SRC/JS/task_list.js)私のボタンのクリックリスナーを持つ:
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)私は静的/ SRC/XMLを作成した後私は
<?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 project.projectモデルを使用する場合は、ボタンを「作成」置き換えるテンプレートを使用して/project_button.xml、)その後、私は、私はファイルPROJを作成する(web.asset_backendで私のjsスクリプトを追加電気ショック療法/ビュー/ 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)そして最後に、私は/ __ openerp__.pyセクション静的/ SRC/XML/project_button.xmlのための 'QWEB'、 'jsの' をのためのプロジェクトに追加しますstatic/src/js/task_list.jsと 'data'セクションにファイルviews/project.xmlを配置してください。
'data': [
'security/project_security.xml',
...
'views/project.xml',
],
'qweb': ['static/src/xml/project_button.xml',],
...
'js': 'static/src/js/task_list.js',
そして、私のボタンは、project.projectモデルの古いボタンに置き換わります。
これは役に立ちます。ありがとう@Roman Gr。 –
あなたは良い仕事をしました –
こんにちは "Создатьновыйпроект"をモデルの値で置き換える方法はありますか?ありがとう –
- 1. ツリービューでボタンを追加するOdoo 8
- 2. odooツリービューの作成ボタンの次にボタンを追加
- 3. Odoo 10 POSに追加ボタン
- 4. odooにボタンを追加するには?
- 5. ボタンとテキストボックスをTkinterのツリービューの行に追加します
- 6. C#ボタン配列ボタンの画像を追加する方法
- 7. ボタンにリストボックスを追加する方法
- 8. QLPreviewControllerにボタンを追加する方法
- 9. ボタンをテーブルに追加する方法
- 10. ボタンにメニューを追加する方法
- 11. Xcodeボタンにラベルを追加するボタン
- 12. リストに追加する方法ボタンごとに汎用ボタンをクリックします。
- 13. 私のページにボタンを追加する方法(HTML上にボタンをレイアウトする)
- 14. jqgridのアクションボタンの前に追加ボタンを追加する方法
- 15. ボタンAPIの作成方法
- 16. Odooのボタンで関連/継承されたレコードを作成する方法
- 17. ボタンを追加する方法
- 18. Javascriptの「停止」ボタンと「リセット」ボタンを追加するには
- 19. キャンバスとTextBlocksをcボタンで巨大なボタンに追加する
- 20. ホームページ(ランディング画面)ボタンでヘッダーを作成
- 21. Python GTK3ツリービューのボタン
- 22. Mailchimpポップアップの作成方法ボタンをクリックすると開くポップアップフォーム
- 23. Jqgrid - パラメータを指定できるカスタムの追加ボタンを作成する方法
- 24. ボタン付きツリービュー
- 25. ブートストラップでボタンの近くにテキストブロックをフロー
- 26. ContentPaneのヘッダーに閉じるボタンを追加するには
- 27. ボタンのホットキーを作成する方法
- 28. 動的に追加されるボタンのメソッドを作成する方法。 asp.net C#
- 29. WebBrowserコントロール用の戻るボタンと進むボタンを追加する
- 30. 多くのボタンにリスナーを追加リソース
これを達成するには、ボタンをビューに追加するだけでボタンを追加するほうが複雑です。過去に私はいくつかのハッキーなjavascriptメソッドを使用していました。適切な方法は、他のモデルからのリストビューに影響を与えない方法でリストビューに関連付けられたqwebとjavascriptを拡張することです。 qwebビューとOdooのjavascriptクラスを拡張する経験はありますか? –
@PhillipStack、ありがとう、私はすでに私の問題の解決策を見つけました。 :) –