Exemplo n.º 1
0
 def get_context_data(self, **kwargs):
     data = super().get_context_data(**kwargs)
     OrderFormSet = inlineformset_factory(Order, OrderItem, form=OrderItemEditForm, extra=1)
     if self.request.POST:
         formset = OrderFormSet(self.request.POST)
     else:
         # basket_items = list(Basket.objects.filter(user=self.request.user))
         basket_items = Basket.get_item(self.request.user)
         if len(basket_items):
             OrderFormSet = inlineformset_factory(
                 Order,
                 OrderItem,
                 form=OrderItemEditForm,
                 extra=len(basket_items)
             )
             formset = OrderFormSet()
             for num, form in enumerate(formset.forms):
                 form.initial['product'] = basket_items[num].product
                 form.initial['quantity'] = basket_items[num].quantity
                 form.initial['price'] = basket_items[num].product.price
             basket_items.delete()
         else:
             formset = OrderFormSet()
     data['orderitems'] = formset
     return data
def basket(request):
    basket_list = []
    if request.user.is_authenticated:
        # basket_list = Basket.objects.filter(user=request.user)
        basket_list = Basket.get_item(request.user).select_related()
    return {'basket': basket_list}