Как я могу отобразить все товары по пользователям и редактировать их? на django
как я могу отобразить все товары и редактировать их? я работаю над проектом электронной коммерции и хочу, чтобы каждый пользователь сам добавлял свои товары
Блок цитата
Блоквота Блокцитата
views.py
def ProductsFunction(request):
Prodcuts = Product.objects.filter(user=request.user)
form = ProductEditForm(instance=Product)
if request.method == 'POST':
form = ProductEditForm(request.POST,request.FILES,instance=Product)
if form.is_valid():
form.save()
return redirect('accounts/products')
context = {
'product':form
}
return render(request, 'usrstore/products.html',context)
models.py
class Product(models.Model):
user = models.ForeignKey(User,on_delete=models.CASCADE)
ProductName = models.CharField(max_length=100,default=None)
ProductDescription = models.TextField(max_length=5000,default=None,null=True,blank=True)
ProductPrice = models.DecimalField(max_digits=5,decimal_places=2)
ProductCost = models.DecimalField(max_digits=5,decimal_places=2)
ProductCreated = models.DateTimeField()
Active = models.BooleanField(default=True)
CategoryProduct = models.ForeignKey(Category,on_delete=models.CASCADE,default=None)
def __str__(self):
return self.ProductName
@receiver(post_save, sender=User)
def createProduct(sender,instance,created,**kwargs):
if created:
Product.objects.create(
user=instance
)
Html код
<form action="POST">
{% csrf_token %}
{% for p in product %}
<div class="product">
<div class="product-img mx-auto">
<img src="{{p.PoductImage.url}}" alt="">
</div>
<div class="productName">
{{p.ProductName}}
{{p.ProductDescription}}
{{p.ProductPrice}}
<button type="submit">edit</button>
</div>
</div>
</form>
{% endfor %}