/ shop / get_suggest路径是什么意思?

时间:2019-06-17 16:49:48

标签: odoo odoo-12

我找到了一个模块,该模块可以在网站电子商务中自动完成搜索,并带有高亮的匹配词和图像。但是我不太了解每个命令的作用。

能否请您向我解释此代码的工作原理以及为什么/ shop / get_suggest?

class WebsiteSale(http.Controller):
    @http.route(['/shop/get_suggest'], type='http', auth="public", methods=['GET'], website=True)
    def get_suggest_json(self, **kw):
        query = kw.get('query')
        names = query.split(' ')
        domain = ['|' for k in range(len(names) - 1)] + [('name', 'ilike', name) for name in names]
        products = request.env['product.template'].search(domain, limit=15)
        products = sorted(products, key=lambda x: SequenceMatcher(None, query.lower(), x.name.lower()).ratio(),
                          reverse=True)
        results = []
        for product in products:
            results.append({'value': product.name, 'data': {'id': product.id, 'after_selected': product.name}})
        return json.dumps({
            'query': 'Unit',
            'suggestions': results
        })

1 个答案:

答案 0 :(得分:0)

当您加载页面 您的域/商店/ get_suggest 时,此控制器功能将被激活。

该功能仅搜索与搜索中给出的查询名称相似的产品。

请仔细阅读本文档,以了解building a website的基础知识