11
Getting ein Typ Fehler, "Tuple" -Objekt ist nicht aufrufbar. Irgendeine Idee, was es sein könnte? (Mach dir keine Gedanken über die Einrückung. Es kopiert sich komisch.) Ich versuche, eine Auswahl basierend auf PackSize von Storeliquor zu erstellen.django: TypeError: 'Tuple' Objekt ist nicht aufrufbar
Views.py:
def storeliquor(request, store_id, liquor_id):
a = StoreLiquor.objects.get(StoreLiquorID=liquor_id)
s = Store.objects.get(StoreID=store_id)
x = Order.objects.get(storeID=s, Active=True)
y = a.OffPremisePrice
c = a.BottleSize
g = request.POST.get('OrderAmount', '')
b = a.PackSize
h = b*2
d = b*3
e = b*4
r = b*5
if c == "1750 ML":
pack_size = (
('1', '1')
('3', '3')
(b, b)
(h, h)
(d, d)
(e, e)
(r, r)
)
elif c == "1000 ML":
pack_size = (
('1', '1')
('3', '3')
('6', '6')
(b, b)
(h, h)
(d, d)
(e, e)
(r, r)
)
elif c == "750 ML":
pack_size = (
('1', '1')
('3', '3')
('6', '6')
(b, b)
(h, h)
(c, d)
(e, e)
(r, r)
)
elif c == "375 ML":
pack_size = (
('3', '3')
('6', '6')
('12', '12')
(b, b)
(h, h)
(d, d)
(e, e)
(r, r)
)
elif c == "200 ML":
pack_size = (
('12', '24')
('24', '24')
(b, b)
(c, c)
(c, d)
(e, e)
(r, r)
)
else:
pack_size = (
(b, b)
(c, c)
(c, d)
(e, e)
(r, r)
)
if request.method == "POST":
f = AddToOrderForm(request.POST)
if f.is_valid():
z = f.save(commit=False)
z.TotalPrice = (float(y)) * (float(g))
z.storeliquorID = a
z.orderID = x
z.save()
return HttpResponseRedirect('/stores/get/%s' % store_id)
else:
f = AddToOrderForm()
f.fields['OrderAmount'].choices = pack_size
args = {}
args['liquor'] = a
args['s'] = s
args['form'] = f
return render(request,'storeliquor.html', args)
Models Datei:
class LiquorOrder(models.Model):
LiquorOrderID = models.AutoField(primary_key=True)
storeliquorID = models.ForeignKey(StoreLiquor)
orderID = models.ForeignKey(Order)
OrderAmount = models.CharField('Order Amount', max_length=3)
TotalPrice = models.DecimalField('Total Price', max_digits=5, decimal_places=2)
StorePrice = models.DecimalField('Store Price', max_digits=5, decimal_places=2)
Datei Forms:
class AddToOrderForm(forms.ModelForm):
class Meta:
model = LiquorOrder
fields = ('OrderAmount', 'StorePrice')
Die Tupel innerhalb 'pack_size' sollten durch Kommas getrennt werden (', ') –