猿问

在计算字段上运行 self._cr.execute

在 Odoo 12 上,我尝试self._cr.execute在计算上运行但返回我Null,我尝试了域并且正在工作,但是因为我将使用的查询很复杂,我需要使用 SQL 查询来完成。


    _inherit ='purchase.order.line'  


    partner1 = fields.Many2one('res.partner', string='Vendor 1', compute='_compute_vendors', copy = True, store=True, readonly= False)

    partner2 = fields.Many2one('res.partner', string='Vendor 2', compute='_compute_vendors', copy = True, store=True, readonly= False)

    partner3 = fields.Many2one('res.partner', string='Vendor 3', compute='_compute_vendors', copy = True, store=True, readonly= False)


    @api.depends('product_id')

    def _compute_vendors(self):

        vendors = []

        vendors.append(self._cr.execute("""SELECT partner_id FROM purchase_order_line"""))

有什么解决办法吗?


偶然的你
浏览 77回答 1
1回答

慕莱坞森

执行 return None,检索您可以使用 fetchall 的选定记录:  # first execute the query  self._cr.execute("""SELECT partner_id FROM purchase_order_line""")  # fetc rows  vendors = [r[0] for r in self._cr.fetchall()]
随时随地看视频慕课网APP

相关分类

Python
我要回答