2016-11-14 43 views
0

這是以購物車作爲對象(會話數組)的訂單模式;如何在ejs模板上顯示購物車訂單?

var orderSchema = mongoose.Schema({ 
    user :{ 
     type : Schema.Types.ObjectId, ref: "User" 
    }, 
    name : { 
     type : String 
    }, 
    phone : { 
     type : String 
    }, 
    residence : { 
     type : String 
    }, 
    street :{ 
     type : String 
    }, 
    building :{ 
     type : String 
    }, 
    status :{ 
     type : String 
    }, 
    paymentMode :{ 
     type : String 
    }, 
    cart :{ 
     type : Object 
    } 
    }); 

這裏是從數據庫獲取訂單的快遞路線;

app.get('/api/profile', isLoggedIn, function(req, res, next) { 
    Order.find({user : req.user}, function(err, orders) { 
    if (err) return err; 
    var cart; 
    orders.forEach(function(order) { 
    cart = new Cart(order.cart); 
    order.items = cart.generateArray(); 
    }); 
    res.render('pages/profile.ejs', {orders : orders}); 
    }); 

});

最後是ejs模板;

<div class="row"> 
<!--Middle Part Start--> 
    <div id="content" class="col-sm-12"> 
    <h1 class="title">Orders</h1> 
    <% for(p=0; p<orders.length; p++){ %> 
    <div class="panel panel-default"> 
     <div class="panel-body"> 
      <ul class="list-group"> 
      <% for(i=0; i<items.length; i++){ %> 
       <li class="list-group-item"> 
       <span class=''><%= items[i].name %> <%= items[i].qty %> <%= items[i].price %> 
        <%= items[i].price %></span> 
      </li> 
      <% } %> 

      </ul> 
     </div> 
     <div class="panel-footer"> </div> 
    </div> 
    <% } %> 

    </div> 

通過單個訂單循環讓我頭痛。

回答

0

更多的研究後,這個解決我的問題:

<div class="row"> 
    <!--Middle Part Start--> 
    <div id="content" class="col-sm-12"> 
    <h1 class="title">Orders</h1> 
    <% for(i=0; i<orders.length; i++){ %> 
    <div class="panel panel-default"> 
     <div class="panel-body"> 

      <ul class="list-group"> 

      <% for (p in orders[i].cart) { %> 
       <li class="list-group-item"> 
       <span class=''><%= orders[i].cart[p].item.name %> quantity:<%= orders[i].cart[p].qty %> Unit Price:<%= orders[i].cart[p].item.price %> 
        Total Price :<%= orders[i].cart[p].price %></span> 
      </li> 
      <% } %> 

      </ul> 
     </div> 
     <div class="panel-footer"> 
     <a><span>Status : <span><%= orders[i].status %> </div> 
    </div> 
    <% } %> 

    </div> 
    <!--Middle Part End --> 
</div> 
相關問題