如何在openerp中的看板视图中调用onchange函数?

时间:2014-10-10 10:12:22

标签: onchange openerp-7 kanban

我想在看板视图中调用一个改变功能。但我不知道怎么称呼这个? 我尝试了很多方法,但仍然是错误的。但没有输出。 我在看板视图中还有另一个问题: 当我从一个拖到另一个时,一些值会改变。 我该如何实现呢?

<record model="ir.ui.view" id="hr_kanban_view_transfer">
    <field name="name">Employee Transfer Kanban</field>
    <field name="model">employee.transfer</field>
    <field name="arch" type="xml">
        <kanban default_group_by="site1">
            <field name="site1"/>
            <field name="color"/>
            <field name="location1"/>
            <field name="location2" /> 
            <field name="site2"/>

            <templates>
                <t t-name="kanban-tooltip">
                    <ul class="oe_kanban_tooltip">
                        <li t-if="record.employee_id.raw_value"><b>Employee:</b> <field name="employee_id"/></li>
                        <li t-if="record.site1.raw_value"><b>Current Project:</b> <field name="site1"/></li>
                        <li t-if="record.location1.raw_value"><b>Source Location:</b> <field name="location1"/></li>
                        <li t-if="record.date.raw_value"><b>Date:</b> <field name="date"/></li>
                    </ul>
                </t>

                <t t-name="kanban-box">
                    <div t-attf-class="oe_kanban_color_#{kanban_getcolor(record.color.raw_value)} oe_kanban_card oe_kanban_global_click oe_semantic_html_override">
                        <div class="oe_dropdown_toggle oe_dropdown_kanban">
                            <span class="oe_e">i</span>
                            <ul class="oe_dropdown_menu">
                                <t t-if="widget.view.is_action_enabled('delete')"><li><a type="delete">Delete</a></li></t>
                                <!--  <li><a name="action_makeMeeting" type="object">Schedule Interview</a></li> -->
                                <li><ul class="oe_kanban_colorpicker" data-field="color"/></li>
                            </ul>
                        </div>
                        <div class="oe_kanban_content" tooltip="kanban-tooltip">
                            <div>
                                <t t-if="record.employee_id.raw_value"><b><field name="employee_id"/></b><br/></t>
                                <i><field name="employee_id"/></i><br/>
                                <field name="site1"/><br/>
                                <field name="site2"/><br/>
                                <t t-if="record.source_location.raw_value">Source Location: <field name="location1"/><br/></t>
                               <!-- <t t-if="record.title_action.raw_value"><field name="title_action"/><br/></t> -->
                                <field name="date"/>
                            </div>
                            <div class="oe_kanban_right">

                                <img t-att-src="kanban_image('hr.employee', 'image_small', record.employee_id.raw_value)" t-att-title="record.employee_id.value" width="24" height="24" class="oe_kanban_avatar"/>

                            </div> 
                        <!--    <div class="oe_kanban_footer_left" style="margin-top:5px;">
                                <t t-raw="record.message_summary.raw_value"/>
                                <field name="categ_ids"/>
                            </div>-->
                        </div>
                        <div class="oe_clear"></div>
                    </div>
                </t>
            </templates>
        </kanban>
    </field>
</record>

当我将员工从一个站点转移到另一个站点时,即site1到site2时,如何更改我的代码? 是否可以在看板视图中使用?

1 个答案:

答案 0 :(得分:0)

您可以在模型中覆盖写入方法。并在值中检查 site1 字段。如果它存在并且改变了你喜欢的一切。

def write(self, cr, user, ids, vals, context=None):
    if 'site1' in vals:
        # your code
    return super(your_model, self).write(cr, user, ids, vals, context)