填充选择选项onchange事件

时间:2017-10-05 11:49:09

标签: openerp odoo-9 odoo-10

我希望在每个@ api.onchange中使用向导中的填充选择字段(' journal_id')

我的例子:

    @api.multi
    @api.onchange('journal_id')
    def _populate(self):
        lst = []
        journals = self.env['account.move'].search([('journal_id','=',self.journal_id.id)])

        for journal in journals:
            lst.append((journal.id, journal.name))
        return lst


    journal_id = fields.Many2one('account.journal', 'Jornal', required=True)
    journal_from = fields.Selection('_populate',string='Name')

更改后,控制台中的journal_id获得了良好的结果,但无法绑定选择字段。

问题在哪里?

1 个答案:

答案 0 :(得分:1)

您可以尝试以下代码:

    @api.multi
    @api.onchange('journal_id')
    def _populate(self):
        lst = []
        journals = self.env['account.move'].search([('journal_id','=',self.journal_id.id)])

        for journal in journals:
            key = '{}'.format(journal.id)
            value = '{}'.format(journal.name)
            lst.append((key, value))
        return lst