如何在Odoo 12中的json控制器中获取特定记录

南部民族

我的问题说明了一切。我已经做了一个控制器来搜索特定模型中的所有记录。

现在,我只想从同一模型中搜索一条记录(按其ID)。

我所有记录的控制器是这样的:

@http.route('/get_sales', type='json', auth='user')
    def get_sales(self):
        sales_rec = request.env['sale.order'].search([])
        sales = []
        for rec in sales_rec:
            vals = {
                'id': rec.id,
                'name': rec.name,
                'partner_id': rec.partner_id,
            }
            sales.append(vals)
        data = {'status': 200, 'response': sales, 'message': 'All sales returned'}
        return data

因此,我必须添加的内容取决于它的ID仅获得一条记录。

谢谢。

adekock11

首先,如下更改您的控制器路线:

@http.route(['/get_sales', '/get_sales/<int:order_id>'], type='json', auth='user')

这样,您现在可以选择是否使用呼叫路线order_id

其次,像这样更改您的方法:

def get_sales(self, order_id=None):

现在,您可以在方法中添加一些逻辑:

if order_id:
    domain = [('id', '=', order_id)]
else:
    domain = []
sales_rec = request.env['sale.order'].search(domain)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章