如何在Odoo框架中集成D3图表?

时间:2016-04-14 11:07:46

标签: openerp odoo-8

我是Stack的新手,我在odoo中遇到了问题,我需要在odoo表单视图中为我的模型集成d3图表。提前谢谢。

1 个答案:

答案 0 :(得分:1)

试试这个, 我们需要在view.xml文件中的表单视图字段中配置窗口小部件。

view.xml

<form string="Graph">
                    <field name="name"  widget="test"/>    
</form>

需要创建一个js文件然后我们需要像这样扩展class-openerp.web.form.FieldChar.extend,

<强> D3_chart.js

openerp.transform_organization_chart = function(openerp) {


    openerp.web.form.widgets.add('test','openerp.web.form.test');

    openerp.web.form.test = openerp.web.form.FieldChar.extend(
            {   
                template: 'test-button',

                init: function () {
                    this._super.apply(this, arguments);
                    this._start = null;
                },

                start: function() {
                    console.log('START');
                    this.Myfunction();
                },



                Myfunction: function()

                {   


                }



            });
}

为我们的图表创建template.xml文件,这里我们需要编写html模板。模板ID和扩展字段名称应该相同。

<强> TEMPLATE.XML

<template id="test-button">
<script type="text/javascript" src="/transform_organization_chart/static/src/js/d3.js"></script>
            <div t-name="test-button">
                <div id="orgChartContainer">
                    <div id="orgChart"></div>
                    </div>
                <div id="consoleOutput"></div>
            </div>
</template>