How to implement a shopping cart in rest API











up vote
-1
down vote

favorite












I'm creating a rest API for my android app and I'm stuck at the cart portion of the API and I want this kinda output data:



{
"userEmail": adbd@xyz.com,
"items": [
{
"item_id": "d3e9d433-bf54-4567-b070-cb033cc27c63",
"quantity": 1
},
{
"item_id": "1a3d7141-1676-422d-bcd1-dbe7eb3a561c",
"quantity": 1
},
{
"item_id": "0f768f63-3953-4f7d-b30b-c61fc2b07cc1",
"quantity": 2
}
]
}


But I don't know how to implement this I have used MongoDB and node js.
Schema of my cart looks like this



var mongoose = require("mongoose");

var Cart = mongoose.Schema({

userEmailId: {
type: String,
default: "",
required: true
},
items :[{
itemIds: {
type: String,
default: "",
required: true
},
itemQuantity: {
type: String,
default: "1",
required: false
}
}]
});

module.exports = mongoose.model("Cart", Cart);


Here is the controller of the cart:



const cart = require('../models/Cart_Model');

exports.showCart = (req,res) =>{

cart.find({
userEmailId : req.params.userEmailId
},
function(err,Cart){

if(err){
res.send(err);
}else{
res.send(Cart);
}
});
}

exports.updateItem = (req,res)=>{

var fieldsForUpdate = {};

res.send(req.body.itemIds);

cart.updateOne({
userEmailId : req.body.userEmailId
},fieldsForUpdate,
function(err,num,raw){

});

}


But now I don't know how to proceed to add and update data to this cart and is this schema is okay?
Thank you in advance! :)










share|improve this question


























    up vote
    -1
    down vote

    favorite












    I'm creating a rest API for my android app and I'm stuck at the cart portion of the API and I want this kinda output data:



    {
    "userEmail": adbd@xyz.com,
    "items": [
    {
    "item_id": "d3e9d433-bf54-4567-b070-cb033cc27c63",
    "quantity": 1
    },
    {
    "item_id": "1a3d7141-1676-422d-bcd1-dbe7eb3a561c",
    "quantity": 1
    },
    {
    "item_id": "0f768f63-3953-4f7d-b30b-c61fc2b07cc1",
    "quantity": 2
    }
    ]
    }


    But I don't know how to implement this I have used MongoDB and node js.
    Schema of my cart looks like this



    var mongoose = require("mongoose");

    var Cart = mongoose.Schema({

    userEmailId: {
    type: String,
    default: "",
    required: true
    },
    items :[{
    itemIds: {
    type: String,
    default: "",
    required: true
    },
    itemQuantity: {
    type: String,
    default: "1",
    required: false
    }
    }]
    });

    module.exports = mongoose.model("Cart", Cart);


    Here is the controller of the cart:



    const cart = require('../models/Cart_Model');

    exports.showCart = (req,res) =>{

    cart.find({
    userEmailId : req.params.userEmailId
    },
    function(err,Cart){

    if(err){
    res.send(err);
    }else{
    res.send(Cart);
    }
    });
    }

    exports.updateItem = (req,res)=>{

    var fieldsForUpdate = {};

    res.send(req.body.itemIds);

    cart.updateOne({
    userEmailId : req.body.userEmailId
    },fieldsForUpdate,
    function(err,num,raw){

    });

    }


    But now I don't know how to proceed to add and update data to this cart and is this schema is okay?
    Thank you in advance! :)










    share|improve this question
























      up vote
      -1
      down vote

      favorite









      up vote
      -1
      down vote

      favorite











      I'm creating a rest API for my android app and I'm stuck at the cart portion of the API and I want this kinda output data:



      {
      "userEmail": adbd@xyz.com,
      "items": [
      {
      "item_id": "d3e9d433-bf54-4567-b070-cb033cc27c63",
      "quantity": 1
      },
      {
      "item_id": "1a3d7141-1676-422d-bcd1-dbe7eb3a561c",
      "quantity": 1
      },
      {
      "item_id": "0f768f63-3953-4f7d-b30b-c61fc2b07cc1",
      "quantity": 2
      }
      ]
      }


      But I don't know how to implement this I have used MongoDB and node js.
      Schema of my cart looks like this



      var mongoose = require("mongoose");

      var Cart = mongoose.Schema({

      userEmailId: {
      type: String,
      default: "",
      required: true
      },
      items :[{
      itemIds: {
      type: String,
      default: "",
      required: true
      },
      itemQuantity: {
      type: String,
      default: "1",
      required: false
      }
      }]
      });

      module.exports = mongoose.model("Cart", Cart);


      Here is the controller of the cart:



      const cart = require('../models/Cart_Model');

      exports.showCart = (req,res) =>{

      cart.find({
      userEmailId : req.params.userEmailId
      },
      function(err,Cart){

      if(err){
      res.send(err);
      }else{
      res.send(Cart);
      }
      });
      }

      exports.updateItem = (req,res)=>{

      var fieldsForUpdate = {};

      res.send(req.body.itemIds);

      cart.updateOne({
      userEmailId : req.body.userEmailId
      },fieldsForUpdate,
      function(err,num,raw){

      });

      }


      But now I don't know how to proceed to add and update data to this cart and is this schema is okay?
      Thank you in advance! :)










      share|improve this question













      I'm creating a rest API for my android app and I'm stuck at the cart portion of the API and I want this kinda output data:



      {
      "userEmail": adbd@xyz.com,
      "items": [
      {
      "item_id": "d3e9d433-bf54-4567-b070-cb033cc27c63",
      "quantity": 1
      },
      {
      "item_id": "1a3d7141-1676-422d-bcd1-dbe7eb3a561c",
      "quantity": 1
      },
      {
      "item_id": "0f768f63-3953-4f7d-b30b-c61fc2b07cc1",
      "quantity": 2
      }
      ]
      }


      But I don't know how to implement this I have used MongoDB and node js.
      Schema of my cart looks like this



      var mongoose = require("mongoose");

      var Cart = mongoose.Schema({

      userEmailId: {
      type: String,
      default: "",
      required: true
      },
      items :[{
      itemIds: {
      type: String,
      default: "",
      required: true
      },
      itemQuantity: {
      type: String,
      default: "1",
      required: false
      }
      }]
      });

      module.exports = mongoose.model("Cart", Cart);


      Here is the controller of the cart:



      const cart = require('../models/Cart_Model');

      exports.showCart = (req,res) =>{

      cart.find({
      userEmailId : req.params.userEmailId
      },
      function(err,Cart){

      if(err){
      res.send(err);
      }else{
      res.send(Cart);
      }
      });
      }

      exports.updateItem = (req,res)=>{

      var fieldsForUpdate = {};

      res.send(req.body.itemIds);

      cart.updateOne({
      userEmailId : req.body.userEmailId
      },fieldsForUpdate,
      function(err,num,raw){

      });

      }


      But now I don't know how to proceed to add and update data to this cart and is this schema is okay?
      Thank you in advance! :)







      node.js mongodb rest






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 2 days ago









      Varun Raj

      4016




      4016





























          active

          oldest

          votes











          Your Answer






          StackExchange.ifUsing("editor", function () {
          StackExchange.using("externalEditor", function () {
          StackExchange.using("snippets", function () {
          StackExchange.snippets.init();
          });
          });
          }, "code-snippets");

          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "1"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53203844%2fhow-to-implement-a-shopping-cart-in-rest-api%23new-answer', 'question_page');
          }
          );

          Post as a guest





































          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















           

          draft saved


          draft discarded



















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53203844%2fhow-to-implement-a-shopping-cart-in-rest-api%23new-answer', 'question_page');
          }
          );

          Post as a guest




















































































          Popular posts from this blog

          Schultheiß

          Verwaltungsgliederung Dänemarks

          Liste der Kulturdenkmale in Wilsdruff