from .. import controller from odoo import http from odoo.http import request class City(controller.Controller): prefix = '/api/v1/' @http.route(prefix + 'city', auth='public', methods=['GET', 'OPTIONS']) def get_city(self, **kw): if not self.authenticate(): return self.response(code=401, description='Unauthorized') parameters = [] name = kw.get('name') if name: name = '%' + name.replace(' ', '%') + '%' parameters.append(('name', 'ilike', name)) cities = request.env['vit.kota'].search(parameters) data = [] for city in cities: data.append({ 'id': city.id, 'name': city.name }) return self.response(data)