From bf96b4b43790b60b80038873a5a34146645d9ccf Mon Sep 17 00:00:00 2001 From: "Jacob.Fritsche" Date: Sat, 1 Mar 2025 17:30:06 +0100 Subject: [PATCH] Added autocomplete API to local Neo4J database --- APICall/GetArticle.py | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/APICall/GetArticle.py b/APICall/GetArticle.py index 48efd72..98e5049 100644 --- a/APICall/GetArticle.py +++ b/APICall/GetArticle.py @@ -1,4 +1,4 @@ -from flask import Flask, jsonify +from flask import Flask, jsonify, request from neo4j import GraphDatabase class Neo4JAPis: @@ -17,5 +17,21 @@ class Neo4JAPis: article = [{"name": record["name"], "EANGTIN": record["EANGTIN"]} for record in result] return jsonify(article) + @self.app.route('/autocomplete', methods=['GET']) + def autocomplete(parameters = None): + with self.driver.session() as session: + search_string = request.args.get('search_string') + query = f""" + MATCH (a:Artikel) + WHERE a.name STARTS WITH "{search_string}" + RETURN a.name AS name + LIMIT 10 + """ + result = session.run(query.format(search_string=search_string)) + suggestion = [record["name"] for record in result] + return jsonify(suggestion) + + + def run(self, debug=True): self.app.run(debug=debug) \ No newline at end of file