2013-02-08 35 views
0

所以我正在開發一個電子商務應用程序(用於在線訂購食物),目前我能夠添加一個項目到一個訂單,但不能添加多個項目。我真的不明白這是怎麼發生的。 在我的意見,我如何能夠添加幾個項目到我的訂單/購物車?

def show_item(request,id): 
    # need to evaluate the HTTP method 
    if request.method == 'POST' 
     a = Item.objects.get(pk=id) 
     form = PartialOrderItemForm(request.POST,instance=a) 
     # check validation of posted data 
     if form.is_valid(): 
      order.add_to_order(request,a) 
      # if test cookie worked, get rid of it 
      if request.session.test_cookie_worked(): 
       request.session.delete_test_cookie() 
      url =urlresolvers.reverse('order_index') 
      # redirect to order page 
      return HttpResponseRedirect(url) 
    else: 
     form = PartialOrderItemForm() 
    request.session.set_test_cookie() 
    context={ 
     'form':form, 


    } 
    return render_to_response('item.html',context,context_instance=RequestContext(request)) 

驗證表單後,視圖調用此方法負責將物品

def add_to_order(request,obj): 
    postdata = request.POST.copy() 
    #get quantity added, return 0 if empty 
    quantity = postdata.get('quantity',0) 
    # fetch the item or return missing page error_message 
    i = get_object_or_404(Item,pk=obj.id) 
    i.orderitem_set.all() 
    # get items in order 
    order_items = get_order_items(request) 
    item_in_orders = False 
    # check to see if item is already in order 
    for order_item in order_items: 
     if order_item.item.id == i.id: 
      #update the quantity if found 
      order_item.augment_quantity(quantity) 
      item_in_orders = True 
    if not item_in_orders: 
     # creat and save a new order item 
     oi = OrderItem() 
     oi.order_id = _order_id(request) 
     oi.quantity = quantity 
     oi.item = i 
     oi.save() 

,這裏是我的模板形式..

<form method="post" action="."> 
     {% csrf_token %} 
     {{ form.as_p }} 
     <br /> 
     <input type="submit" id="submit_order" value="Add To Order" name="submit"> 
</form> 

任何建議,我應該如何去做這件事。

回答

0

那麼問題是我的縮進,只能用pdb找到它。 pdb是真正的交易

相關問題