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}