in my Django project i have a function:

```

def retail_product_detail(request, slug):
    context = {
        'product_retail': get_object_or_404(Product, slug=slug),
        'cart_product_form': CartAddProductRetailForm(),
        'related_products': Product.objects.filter(category__slug=self.kwargs['slug'])
        }
    return render(request, 'retail/single_product_retail.html', context)

```

how can i turn it into class RetailProductDetail and pass the form to be displayed?

i tried:

```

class RetailProductDetail(FormView):

    template_name = 'retail/single_product_retail.html'
    context_object_name = 'product_retail'
    form_class = CartAddProductRetailForm

    def get_queryset(self):
        return Product.objects.filter(category__slug=self.kwargs['slug'])

    def get_context_data(self, *, object_list=None, **kwargs):
        context = super().get_context_data(**kwargs)
        context['product_retail'] = Product.objects.get(slug=self.kwargs['slug'])
        context['related_products_1'] = Product.objects.select_related('tag').all()
        return context

```

But form doesn't works.

In template:

```
<form action="{% url 'cart_add_retail' slug=product_retail.slug %}" method="post">
    {{ cart_product_form }}
    {% csrf_token %}
    <br>
    <input class="btn btn-outline-dark flex-shrink-0" type="submit" value="Add to cart>
</form>

```

How can I fix it?