Cześć, mam problem i nie wiem jak się za to zabrać. Stworzyłem model zawierający nazwę produktu i jego cenę. Chcę dać użytkownikowi możliwość edycji ceny tego produktu. Wiadomo, że wtedy wystarczy stworzyć np. odpowiedni formularz i nie będzie problemu.
Ale co jeśli mam np już 3 produkty i chciałbym aby użytkownik mógł edytować ich ceny na jednej stronie? Coś w stylu strona z listą produktów ale zawierająca od razu możliwość edycji ich ceny. Jak się za to zabrać?
Myślałem o stworzeniu modelu "listaproduktów" który zawierałby modele tych produktów mających być edytowanych ale nie potrafię stworzyć formy tak aby móc to wszystko wewnątrz edytować, może jest jakiś lepszy sposób? Chodzi mi o jakiś zamysł w którą stronę pójść z tym.
Oto co na razie wymyśliłem (oczywiście to nie działa bo nie mogę edytować cen poszczególnych produktów):
class Product(models.Model):
name = models.CharField(max_length=100)
price = models.IntegerField(default='0')
def __unicode__(self):
return u"{}({})".format(self.name, self.price)
class Cart(models.Model):
product = models.ManyToManyField(Product)
name = models.CharField(max_length=50)
def __unicode__(self):
return self.name
forms.py
class CartForm(forms.ModelForm):
product = forms.ModelMultipleChoiceField(queryset = Product.objects.all(), widget=forms.CheckboxSelectMultiple(),required=True)
name = forms.CharField(max_length=45, label='nazwa')
price = forms.IntegerField(label='price')
class Meta:
model = Cart
fields = ('product', 'name', 'price')