我在.py文件中编写了一些python代码来显示向导
class DisplayWindow(models.Model):
_inherit = 'res.partner'
wizard_id = fields.Many2one('sale.example_wizard')
def result_to_search(self, cr, uid, active_ids):
wizard = self.pool['sale.example_wizard'].create(cr, uid, vals={
'partner_ids': [(6, 0, active_ids)]
})
return {
'name': _('Account Search'),
'type': 'ir.actions.act_window',
'res_model': 'sale.example_wizard',
'res_id': wizard,
'view_type': 'form',
'view_mode': 'form',
'target': 'new',
}
这是我的.xml文件
<openerp>
<data>
<!--This xml file is responsible for the server action of displaying the wizard-->
<record model="ir.actions.server" id="action_search_for_result">
<field name="name">Account Search</field>
<field name="model_id" ref="sale.model_res_partner"/>
<field name="code">
if context.get('active_model') == 'res.partner' and context.get('active_ids'):
action = self.pool['res.partner'].result_to_search(cr, uid, context.get('active_ids'))
</field>
</record>
<record model="ir.values" id="search_result">
<field name="model_id" ref="sale.model_res_partner"/>
<field name="name">Account Search</field>
<field name="key2">client_action_multi</field>
<!--automatically attach action to the dropdown button-->
<field name="value" eval="'ir.actions.server,' +str(ref('action_search_for_result'))"/>
<field name="key">action</field>
<field name="model">res.partner</field>
</record>
</data>
</openerp>
我的问题是,当我从cutomer&#39;中选择所有客户时。 listview它只选择第一页联系人和我为向导按钮编写的任何代码,它只适用于第一页的客户。但我希望的结果可以用于所有我在数据库中拥有的客户。 可能我对这段代码做错了什么
wizard = self.pool['sale.example_wizard'].create(cr, uid, vals={
'partner_ids': [(6, 0, active_ids)]
})
请帮帮我。如果需要,我可以解释更多。感谢
答案 0 :(得分:1)
您可以使用以下代码获取所选记录。
wizard = self.pool['sale.example_wizard'].create(cr, uid, vals={
'partner_ids': [(6, 0, self._context.get('active_ids',[]))]
})
由于