diff --git a/tienda_ilusion/don_confiao/templates/don_confiao/product_list.html b/tienda_ilusion/don_confiao/templates/don_confiao/product_list.html
new file mode 100644
index 0000000..0ff63b9
--- /dev/null
+++ b/tienda_ilusion/don_confiao/templates/don_confiao/product_list.html
@@ -0,0 +1,13 @@
+
+{% block content %}
+ Lista de productos
+
+ {% for obj in object_list %}
+ - {{ obj.name }} ({{ obj.id }})
+ {% endfor %}
+
+{% endblock %}
diff --git a/tienda_ilusion/don_confiao/urls.py b/tienda_ilusion/don_confiao/urls.py
index bdea574..7879ccb 100644
--- a/tienda_ilusion/don_confiao/urls.py
+++ b/tienda_ilusion/don_confiao/urls.py
@@ -8,6 +8,7 @@ urlpatterns = [
path("comprar", views.buy, name="buy"),
path("compras", views.purchases, name="purchases"),
path("productos", views.products, name="products"),
+ path("lista_productos", views.ProductListView.as_view(), name='product_list'),
path("importar_productos", views.import_products, name="import_products"),
path("cuadrar_tarro", views.reconciliate_jar, name="reconciliate_jar"),
path("cuadres", views.reconciliate_jar, name="reconciliations"),
diff --git a/tienda_ilusion/don_confiao/views.py b/tienda_ilusion/don_confiao/views.py
index 37fb174..efa121d 100644
--- a/tienda_ilusion/don_confiao/views.py
+++ b/tienda_ilusion/don_confiao/views.py
@@ -2,6 +2,7 @@ from django.shortcuts import render
from django.http import HttpResponse, HttpResponseRedirect, JsonResponse
from django.template import loader
from django.core.exceptions import ValidationError
+from django.views.generic import ListView
from .models import Sale, Product, ProductCategory, Payment
from .forms import ImportProductsForm, PurchaseForm, LineaFormSet, ReconciliationJarForm
@@ -124,3 +125,14 @@ def handle_import_products_file(csv_file):
product.categories.clear()
for category in categories:
product.categories.add(category)
+
+
+class ProductListView(ListView):
+ model = Product
+ template_model = 'don_confiao/product_list.html'
+
+ def get_queryset(self):
+ name = self.request.GET.get('name')
+ if name:
+ return Product.objects.filter(name__icontains=name)
+ return Product.objects.all()