diff options
Diffstat (limited to 'indoteknik_api/controllers/api_v1/city.py')
| -rw-r--r-- | indoteknik_api/controllers/api_v1/city.py | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/indoteknik_api/controllers/api_v1/city.py b/indoteknik_api/controllers/api_v1/city.py new file mode 100644 index 00000000..773cd483 --- /dev/null +++ b/indoteknik_api/controllers/api_v1/city.py @@ -0,0 +1,26 @@ +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) + |
