From 264b2dd6de43c78218b24bd67e0347e3c1d22d9e Mon Sep 17 00:00:00 2001 From: Kirill Date: Sun, 26 Jul 2026 20:16:01 +0300 Subject: [PATCH] feat(api): Added functionality for finding by slug and api --- api/product.py | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/api/product.py b/api/product.py index 14acb14..b0fea92 100644 --- a/api/product.py +++ b/api/product.py @@ -1,5 +1,5 @@ from flask import jsonify, request -from db.handlers.product_handler import get_products_with_filters, get_product_by_id +from db.handlers.product_handler import get_products_with_filters, get_product_by_id, get_product_by_slug from flask import Blueprint import re @@ -91,7 +91,7 @@ def get_products(): @api_product.route('/', methods=['GET'], strict_slashes=False) -def get_product(product_id): +def get_product_by_id_route(product_id): try: product = get_product_by_id(product_id) if product: @@ -101,6 +101,17 @@ def get_product(product_id): return jsonify({"error": str(e)}), 500 +@api_product.route('/', methods=['GET'], strict_slashes=False) +def get_product_by_slug_route(slug): + try: + product = get_product_by_slug(slug) + if product: + return jsonify(product), 200 + return jsonify({"error": "Product not found"}), 404 + except Exception as e: + return jsonify({"error": str(e)}), 500 + + @api_product.route('/fetchById', methods=['GET'], strict_slashes=False) def get_product_by_id_param(): try: