E-commerce Website With Django || Add To Cart Functionality || part 3

Video Statistics and Information

Video
Captions Word Cloud
Reddit Comments
Captions
welcome to welcome back to code is clinton this is video number three of the e-commerce website to jungle so in this video i'm going to enable users how to cut by themselves something like this click on the cards button it cuts guess i have an item in the class i'm going to add the t-shirts the cards gets updated i have two items so click on the copy on the cart icon surround the way on the card page now you can increase the quantity to top right here gets updated the twitter the cat's total gets updated and my cat's up here also gets updated so let's try that perfect you see it's working out three items in the cart now and my total price egg is also gets it got updated it's not at 6.35 so in this video i'm going to show you how to work on this home page and on the card page so as for that you are getting started right now what i want to do is this i want to simply [Music] passing the id of this product to the archicad button i want to pass the id of the product to the archicad button after after doing that i want to send the id of those products to the back end so let's do that now i'm going to go down to my store.html so now i'm going to create defaults i'm going to create custom attributes i'm going to call this one data so to create custom attributes in hdmi i'm going to put some deleter i think the name of the ask you want to create i'm going to say data i think products i think products okay i'm going to pass in the product id as a value of this attribute i created so let's do that right now so i'm going to do this right now put this in the mixtures in the string and i'll say products.id id so i'm going to create another attributes called action so i'm going to give this a value of add i'm going to call this action equals this i'm going with the value of r so save your work i'm also going to add a class to this a tag i'm going to pick up i'm going to add a class to this 8 i'm going to call it add so cats yes add to cards so save your work now so now i'm going to pick up this a click this ad in i'm going to create a javascript file in javascript file and pick up this a tag show this class name i created it out to card so let's create we're going to create this our javascript file in our static folder javascript is a static file so we're going to create it in the static folders list to that right now okay buddha called js okay folder called js in the static folder this one should be this okay quit this product called js since now this gs folder i'm also gonna do this or like what is it called again i'm gonna create a file called cats.js instant so let's do that right now cats dots cheers so my gs file has been created cats.js in the gs folder and gs folders in this static folder so we need to link this to our js file called cast.js we need to link it to the base.html which is the appearance template so now i've really linked my year i should see how you could say you're going to link yours remember gonna put in the static folder just like you link css then your js folder and the name of your cut.js it should be the last it should just to be exactly before the closing body tag in the stand so now now that i've done this i'm not i'm gonna look through those add to cart button remember i give them a class of how to cut i'm gonna loop i'm gonna pick up these buttons by this class name and then loop through them so let's do that now so i'm going to simply say let's btn i'm going to call the buttons btns equal to documents dots get elements by class name add to cars so that's it now so i'm going to loop through this btns because this name i'm looking through it's because i want to add an event listener to it a click event someone will see for let i equals zero i is gonna be less than btn dot length i lost plus so i think this is that i i just tried looping through importance we have here the first one an index of zero and i said i is less than btn.length btn.length is six because the button here is six so now i plus plus means that zero is gonna increment to one two three four and ends at five it's not going to be equal to six because the condition says that i is lesser than bts not length so now i'm going to pick up this button now i'm gonna say btns i dot add event listener i'm going to add a click event to this button instantly click event so i want to get the id i passed to them so i'm going to put in this function whenever i click on the button this function is going to get executed so this is what i want to do now for the product i'm going to call this verb called let's id equal to this this we face this is just like python self it refers to the individual button these dot data sets dots products i'm going to do something for let's action these.data said that products are not product id and let's action id console.log products id let's see if they're correct so save now so i'm going to get onto my browser stamina simply press f12 on your keyboard you get your browser stamina okay i'm on the browser's console it is called console and not stamina so now i'm going to click on any so on one of the button so i click on the first button and give me an id of one that is coming from the product so i'm going to click on the second button give me an eyes give me the let's give me an idea of two and the id is from the product since then so that's a product id so i'm gonna send this id to the back end understand so let's go let's see how we can do that so now i've got some of the ids so i want to do is this i want to check if the user is logged in so this is how i'm going to do it right now so i'm going to do like this or simply write an if statements up here so i'll simply say if user is equal so but before i do this i need to declare user i need to create this variable in the base of html so let's go to that right there so i'm going to scroll up to the i think i need to scroll up so here i have to the edge section i think i will create the scripts over here script just see i'm going to create that variable called user i'm going to say let's user equal to this to the logged in user request.user so save now let's go down to the custom.js now so you're going to say if user is equal equal to anonymous user anonymous these jungle way of saying either that is not logged in so if user is equal to anonymous user so i'm going to put this in the parenthesis i want to simply say i'm constantly console.log user is not logged in it's not logged in okay now so what i'm going to now else if the user is logged in i'm going to run a function i'm going to call this function updates caps i'm going to give it these two variables as the arguments products id and action so now i'm going to create this function called update cards i'm going to put it down here function updates cats i'm going to give it id as a parameter and action these are the parameters understand so now what i want to do is that i want to send the id of the products to the backend and the action it should be called action i'm going to send it to the on scenes at the back end so i'm going to create a view i will send it to user is not logged in you cannot simply console.log these are not logged in but if the user is logged in a function is going to get executed you can see else and the function now what i'm trying to create here well if i do that i said i want to send the id this id product i want to send a product id to the back end right so i'm going to create a view that's going to receive this id you understand so i'm going to put the view i'm going to call this view updates cards my view is coming up okay i'm going to scroll down i'll call this view of these cards i'm gonna give it requests and now i'll simply return a json response adjacent response if you see response saying so save so i'm going to import qc response from django.http from django.http import json response so now that is what i want to do now so i'm going to create a url mapping for this view let's do that and just see released here i'm gonna call this beats cards these cats and views dots the name of our view function of these cats and the dynamic national [Music] slash updates so let's see what it's going to provide so enter should give us a json response he said update and not stop oh something is wrong here updates enter our server is down you can see it says okay i split my function wrongly this is small you control x so refresh your page it's called updates cards are not updates so enter something is wrong let's see our url mapping i'm going to see these cards let's see the views don't spy again so save these let's move on to our browser [Music] refresh i guess the problem is that for slash enter so you can see now we having of these cards on the screen because it's because that four slash we have in here at the last four slashes causing the error so it has been removed now so we're gonna send as i was saying i'm gonna send the id of the product to that particular view i'm gonna use the fetch to fetch fetch api from javascript so this is what i'm going to do here so i'm going to simply say let's url be equal to what you created that's update cart's url so i'm gonna save this so i'm gonna fetch we're gonna fetch this url this url we are trying to push some data to this particular url we're gonna simply refresh the url this created i'm going to say u r l comma so i'm going to put some of the method you're going to use a post method and post to the to that url so you're going to be a post method okay after that you're gonna create the address this is gonna be equal to this it's gonna have content type content type it's going to be suggesting formats right content type should be equal to application slash json okay after i've done this now i'm going to create a body the body the detail i'm trying to send to the view it's going to be part of this i just want to send these data as the view the product id and the action and that's what we have here we have them here the parameters here so i'm going to simply say over here i'll simply do this products id is equal to the id we have here and the action it's going to go to action and i want to do now i wouldn't we haven't we cannot we are going to base we are going to post a string value so i'm going to convert this to a string by saying json.stringify so this id and the action we have here this ideal action we have here at what we also have here because on the function that has been called here you can see they having the id which is this and the action which is this up here also so now i'm going to do is this now i'm going to string i'm going to convert this to a string because it's an object currently so i need to stringify it basically say json so that i'm going to save my work now and that's now what is this a promise has to be returned after we've done this it promised to be returned so i'm going to simply say i'm going to convert this back i'm going to convert our response to adjacent data by doing these dots then response response i'm gonna be equal to this i'm gonna be equal to response dot json so after that i'm gonna clear out my data i'm going to say dots then data will be quotes here i'm going to consider data console.log data so the data we're going to console us is what we have in our views of pi we're going to console this json response cards updated if everything goes well so let's have an error let me show you the arrow we're going to have a 403 error that errors as a result of we not having the cxrf token i'm going to show you how you can get that so store still around the store page again so click on the add to cards if you watch closely we having the 403 arrow down here for bidding that's because there is no csrf token on this and we are doing a post request with django and we need then we didn't apply csrf token you know verizon inform we could simply write csrf token on the form this is different this is not form so what we're going to do is this you're going to simply in jungle jungle provides a way we are going to use cxrf to queries in javascript or ajax easily in the documentation it's over here realizing ajax or javascript easy way you can use your csrf to simply copy this copy and paste it to your base templates in the add section just here so if this is not these templates react with the script start in the head section so after after we've done this now go back to your card.js we're going to place that csrf to come in the address just after the contents type [Music] we're going to do this simply say x slash should be equal to cxrf.com cxrf token so save so that's it now so save your welcome let's see get back to the browser and let's go there's no problem refresh the page so how to cut again oh yeah see okay say cxif token is not defined since i didn't save my base.html so save save again and go back to the browser refresh the page lots of cards outfits you can see we having the we having the json response cards updated that shows that our that shows that our data has been sent to the backend has been sent to this view we are putting this json response that's updated you watch closely you have been cut i'm going to click again you're having the cats updated that means we have been able to send the id of the products down to the back end that's good so let's now we need to do now we're going to go down to that back into that view so you're going to get the data but simply do this data should be equal to i'm going to say json i'm going to convert that object back to json.json.loads requests.data so save now i'm going to import json make sure you notice reports json so i'm going to get the i'm going to get the product id so don't play here i'm going to get product id you know it sends the id to the backend should be equal to data i call this something this is called okay it's called product id is gonna be equal to data scrap brackets the product id that is highlighted here id so that's it now so after i've done this do something for the action action we're gonna be go to data axle script bracket action based so now i'm going to get the products by this id let me simply say products now i'm going to say products should be equal to products dot objects dot gets id equal to product id it's down the productivity you notice the idea is sent to the back end so we are not trying to get the object by that id so after we've done this now we're going to get our cards again we're gonna just catch this look to the clever customer i'm going to say customer customer should be equal to requests dot user loads customer this is the loading customer i'm going to get the cats cats created so i'll simply copy the one i have up here to save time so i'm going to get the cards like this we read that create or retrieve the cards it says clean the last video so i'm going to paste it here that will either create or retrieve the cards as i said in the last video so of course on the card now we're going to we also going to get the cat items the same way we call the cats instead we're going to say cat items it's going to be created equal to cut items that's objects dot get or create cards red cards which is this cut is one of the attributes of the card item has not been equal to the cuts we just created here and products with an attribute of cards it's going to be equal to the products we have here down here so i'm gonna put this product on top so that's all we need to do now so we need to do next is so now i'm going to explain this again you can see i got my cards this simply does you simply guess helps you get create a card or gets or retrieve a card if they can't exist for a particular logged in customer for example for example our login claire has an already existing card he's gonna wait he's gonna get the cats but i mean the customer does not have the cards he's gonna create a card you can see he says get or create for the logged in customer that's has not been checked out that has not been completed which is the force that seems of course for our cat items understand so yeah we are trying to get cut items by the products we have here understand if the product just like this cut items that object that gets or creates for the particular cards that we have and the products is gonna be the products we assigned here so you're going to simply put in an if statements understand i said if action i if you remember i added an action attributes which is this which is it has a value of add so now i'm going to do this now i'm going to simply say if actions is equal to add i want to simply i'm going to simply increase the quantity of the cat's item understand i'm going to simply increase the quantity of the cat's item so i'm going to simply say card items i'm going to say cut item so i'm going to call this cat item or not item we are getting the item individually let me say cut item dots quantity should be added one should be added to the quantity plus equal to plus equal to one i'm going to say item dot save dot save so that's it now so let's see get onto our browser so let's refresh the page so i think you can add two cards now so you'll simply say add to cart or we need to we need to add a reload function whenever you click on the button that will make sure it works okay i'm going to add reload function just here if i click on the button and try the reload function you know simply say location dots we can simply add it down here now let's add it to your wanted to add it before location dot reload this x to reload the page so now refresh the page so how to cut so let's go down to our cards page enter perfect you can see we have some items in the cards now i'm not sure if the item is coming from the phone so what i'm going to do is this so i'm going to click all the items i have in the database right now so i'm going to clear the all the cards items so i want to be sure if all we did is working so let's see let's get back to the store page so i'm from it's well enough i'm going to add the url for the home page on the store page and the cart page rather so let's add them down typing stuff simply say url should be equal to stop and copy this i'm going to see paste here go to v and change this to cats not ca not they're not there so for the error it's going to be p steady a for the card container i'm going to be here changes to cats cuts so save and refresh so go back to the home page okay let's add add to cart go to the cart page click here oh the item is not showing we are not having any error per se so what was the problem you see we added two cuts but we didn't have any item here the error should be from our code so i'm going to check where the error is coming from let's see our views on i'm going spy scroll down to the updates cards okay the error is from here you can see um the arrow says request to date size we request the body the body consists it's called body from the conscious request the body and not data so i'm going to change that to request body so that's the data we are getting from the fetch url from the fetch api so save now i'm going to add that location reload back so let's see give it to the home page so let's we're going to add an item to cut let's add the green shoe how to cut we hope it gets added get to the cart page perfect you can see we have the green shoe there so they are if we had if we had the green shield one more time it's going to increase the quantity so get to the cart page because they can't see it's not so that's a result that's because of what we did here from my views of spy so i said here if action is equal to her the cat item does quantitation graph one added to which you have plus one added to it understand you get it because here we are seeing cut items that objects don't get or create if the cut item exists it's only just going to get it but we need to add the quantity if we keep on adding that same item to other cons that's why we have to add the action equal to add so because as we add in the quantity as well as we are adding that sim card that same item it has an action equal to her that's why i have to come here and say if action is equal equal to add simply increase the cast quantity by one so i think we are truly this section and the next section which one what what to do is this whenever we update the price the quantity here won't be cuts on the card total to also get updated by the product of the price and the quantity understand so let's do that right now what to do next is these ones work on this quantity field whereby if we increase the quantity it's gonna also update the total price and the total we have here you understand so i'm gonna pick up the quantity field for example i'm gonna pick up all the quantity field we have we have on this page so i'm going to go down to my cat.html [Music] code.html and here's the quantitative field i'll show you it's over here this is the quantity field we have here okay so i'm going to give this concept i'm going to give it a class of quantity so i'm going to pick it through this class class of quantity okay so now i'm going to go back to my cut.js again and do something similar i'm going to pick them up i'm going to simply say let's quantity field i will send the value of the quantity view to the backend whenever i change whenever the value changes understand so let's do that so quantity let's quantity field we equal to documents dot get element by class name [Music] quantity i give it the class name of quantity so i'm going to look through it they can be added for the first one we're going to do the same thing for let's i equal to zero i is less than quantity field dots length i plus plus so now what i'm gonna do is that when you say quantity field quantity field i add event listener i'm going to add a change event it's not a click this time whenever the value changes let's send that value to the back and i'm going to add a change events okay i'm going to call this function i'm not going to call any function here sorry we're going to call it functional mind me we're going to say function okay what i want to do is stay so i'm going to get the value of the quantity field right we're going to get a value so this is what we're going to do now simply say quantity field i no sequences i'm going to call i'm going to declare a variable called quantity field value positive field value let's consider val equal to this motor v dot value understand easy variable i declared i'm having an error okay the error comes from me not spelling my function properly so the line has left so this is actually the variable called constant quantity feed value and it owes the value of our quantity field which is the d2 or the one we have here understand so consequences positive field i refers to the individual fields we have the individual fields and those value is pointing at the value inside of the fields understand so after doing this number two gets the particular products the name of the product associated with the particular quantity field not together snap products associated with a particular positive field so i'm not going to do this go down to our cats.html so here's our quantity field this input type watch closely so this input type as appearance called td this td and the tv also has a guaranteed tr instance sound to assess the grand periods of this quantity field the apparently quantity field is td the grandparent is t house let's assess it first okay get down to the card.js we'll simply say let's i'm going to call this value let's quantity quantitative field products products will not be equal to quantity field eye those appearance elements the experience element so this is the grandparents who have gained access to the grandparents of the quantity field where is it the game okay i've gained access to the grand parents which is this tr that those parent element or spread elements refresh the grandparents so now also gets the second child of the grandparents elements the second chap which is this cd we have here so i'm going to do this now i'm going to simply say here's the card simply say go to children children scrape brackets one by zero is the first chart one is the second child okay after that i've gained access to the child to the first child to the second child of the grandparents elements understand i've got only i've gotten it so after that now i'm going to go into i also want to get this h3 so i'm going to simply say see people to know that should join the game where am i working on cut.js i'm going to simply say dots children 0 so as i said earlier i'm going to explain this again the children one as i said earlier also i'm trying to get the grandparents of our positive physicist tr so from there i tried getting the second child of the grandparents which is cd so now i want to get the first child of the second child of the grand parents only gets the first child which is h3 so to see where to see how to see those children [Music] the children zero the first child someone get the value of the first child the value of the first child is the product name understand i'm going to simply.ina text dots so now i've gotten the value which is name of the product associated with the particular quantity field so now i'm going to simply create a view that i'm going to pass this data to i'm trying to send the constant i'm trying to send the value of the quantity field and the products associated the particular quantity field to the back end so i'm going to create the view for for the i'm going to create the view i'm going to send these values to all right let's create the view where i'm going to pass the data to so i'm going to simply call this update quantity let's say update simply updates quantity save requests i'm going to return it just in response also one thing called this quantity updated of being said okay i'm going to create a url mapping for this copy this function going to see my views that buy my urls would buy so it'll be called updates quantity now the function is going to be called this copy no control z it's going to be called monthly updates quantity and this will be called what i have here control v so save now let's get off the card.js back again okay before i proceed i need to confirm this is if what i did here so i'm going to console.log quantity field products go to that log quantity field products whenever i change the value whenever i click on any of these so whenever i click on this on the first input field i should get great shoe in the console so let's get the console click on console so i'm going to increase this so refresh the page so try it again perfect you can see i'm getting the green shoe which is associated with the quantity feed i'm trying for the second one that's good so now let's continue so what we need to do is this so let's send the quantity field value and the quantity field products to the back end so we're going to simply do the same thing we did up there simply say let's uh equal to slash updates quantity okay after i've done this now i'm gonna fetch this url fetch which you are now okay you know simply puts in the method that's really the first time method it's gonna be a post method after this i'm gonna do what's called the address i'm gonna have content type application slash json and the csrf token it's going to be equal to cx f token so put your comma here we're gonna have the body so the body now is going to be the quantity field value and the quantity product so i'm going to simply do that now i'm going to simply say q for the quantity field value i'm going to simply abbreviate it to qfv qfv qfv is going to be equal to the quantity field value and qfp the quantity field products so that's it so having an error i don't know where the error is coming from okay the error is for me i should have added the same e column in between okay i think the error has disappeared so now i'm going to string if i'm going to stringify this because we need to pass a string but not an object to the back end so let's string the file just in the stringify no json save so after doing this now we're gonna return a promise that's then gonna have this recipe done we're gonna convert the string back to a json data simply say response dot json and we're going to return the actual data we have in the visa spy which is quantity updated so let's do that i'm just see i'm gonna change this to data and maybe called console.log data in your console.log the data so save so now let's see if everything is working so we're going to go down to the job browser now so when we click on this as you have constantly updated the console that shows that everything is working fine so click oh we're having an error the error should do zero c say updates constantly not found oh i made a mistake again it's not capital q it is small q i'm not capital q so save refresh you're going to try updating if you have quantity updated perfect means our data has been essentially viewed without any problem so now all we need to do is this we need to get onto our views.by the view we created okay i'm going to bring the data off where you're going to say data we're going to do the same json.loads and go to chasing that loads request that so now look at the body value the quantity field i'm going to admit it i'm going to declare variable quantity field should be equal to data script brackets qfv from the gs rescue mv of course the quantitative field value which we have up here qavi i said so q av and for the quasi field products quantity field products this because i'm going to call this quality field value the value i'm trying to get it's not the field the value and quantity field products the product name is gonna be equal to okay so now i'm going to simply say quantity field product should be equal to data square brackets qfp okay that's it that's quantitative feedback after i've done this now i'm going to query the products i'm going to vary the products from the cards items i'm going to simply say products should be equal to cat items dot objects dot filter products under underscore name equal to quantity field products dots last summon i'm trying to get i'm trying to get a single filter returns a previous set and start i'm trying to get a single object something that i put in the dot last i mean they got last is better than the first so that last so now i've gotten the products associated with the particle i'm now in my in my back end in the views now i've got the products associated with the particular quantity field so now what i want to do now is i want to assign whenever the true dot whenever the quantity of your personal approval changes by clicking on that by clicking on the by clicking on this button this up and down button what i want is that once that quantity to be saved to the back end for the button products associated quality field so i'm going to do this now we'll just say products quantity should be equal to quantitative field value i will simply say product receive [Music] so that's it so i think everything is working now so i'm going to save my rocks if i get down to the i'm going to refresh this page so now i'm going to increase my logo to 5 so i have 5 amp boogers now to begin with the admin section check cuts items check hamburger you see that the amber cup quantity is now five understand see if i try increasing it from the front end again to six let's go to the back end refresh the page it's not six you can see it's working working super fine so for it we want it to reflect on the front once it's you see it's still not multiplying correctly you can see that because i'm going to add the page reload whenever i click on the button i'm going to add a page reload so let's do that right now so i'm going to go down to my cardo js and just here i can simply say location dodge reload and let's see refresh the page you can see now six times twelve point five five is now seven five point three zero so i'm going to increase this you can see something it's having three yeah so i wanna use it to seven it did not work why because i'm gonna write the browser you can see it works now so let's try to eat again wow you see it's working let's reduce it back to seven nice it's working so what i want to do next is i want to like add the number the quantity the number of items we have in the cart want to make sure it's reflects up here understand so now from my models of pi if you follow us from the beginning remember i did something here model.pi under the cats model i declared i defined the function which says get item to talk this fck the tutor number item we have in the cats understand it's under the cats model so i'll simply do is this i'm going to put one to my views to my view.buy okay so for our simply i need i need to have these stats in the three views i need to have this at publish in my in views i have now someone will simply let's copy all these i'm gonna paste it here this view of what am i doing stuff okay i need to have this cards so let's just copy this if requests so i'm gonna copy it and paste up here let's paste it here x so that's it now i'm gonna pass the cuts to the to the context i'm gonna say cats it's gonna be equal to cats so save i'm gonna go down to our most name again base.html where the cards icon is scroll down here we're gonna do this okay just here i'm not putting that cards let's see cats dots gets you see i can't even buy the item total let's see the models which is item tutor okay it's item twitter so i'm gonna paint html let's just pass that there i tend to talk because the cards we have now the cards we have have been passed to our stor.html and the cats.html and they are both ineviting the base template so the base templates can get can get from the start.html if it's trying either on the stopped html page for example now let's see refresh you can see now we have the number of cat items here if i come down to my home page and try to add items it can't get updated so add item oh they work things what should work it should certainly work so let's try adding add let's add the green shoe because you get updated because we have 15 items there are the let's add these t-shirts i don't know why you can see it's not 16 okay now what i want to do next is this i want to make sure that whenever our cat gets to zero quantity i want to make sure it gets it leaves the cats understand they might get a zero quantity you want to make sure they cut the item leave the cards so that will be in our views you know our models of pie so we're gonna come down to we'll come down to this get item total which app straight under some of the quantity we have in the cards so i'm going to say that if any of oh i don't think they should not be in the it should not be here it should be in the cat's item model maybe we are going to create a new maybe we are going to create a new function so let's do that control c so we're going to call this dev gets quantity so i want to do is this i want to say want to guess the quantity of a particular item understand so you're going to simply say quantity okay rather than creating a new function i think we can use this all this gets to top function all together as you can see we say get to that right and this is our get tutorial this last column we have here you understand so let's do something now so i'm going to simply say if someone listen to this now if total is equal equal to 0.00 so i'm trying to say that if our total price is equal to zero point zero zero means the quantity is equal to zero instead so if two times equal to zero zero i'm gonna simply say solve dot delete self.delete so save now let's go back there refresh the page so just loading perfect because it has been deleted so let's try adding some items to the cards add the game okay get onto the cards page first loosely we can increase the quantity total gets repeated you can remove this boom it's out of the cards nice it's everything is working fine so what we need to do is that we need to put in the name of the logged in user up here so that's not good so come down to the base.html remember i got the script tag and placed the name of the you and please the user here i said let's use i go to requests.user so i'm going to scroll down to the nav bar and look for va i have that a new user it should be somewhere around here okay it's here so i'll simply put saying that user simply say user so save up it works refresh the page perfect you can see we have hello clients the lobby you say so we've come to the end of this article tutorial with jungle you know our e-commerce website so in the next video you're going to work on payments whereby user can check out and make you can check out and make payments instead using paypal so i'll be the next video so if you like this video why not subscribe to my channel as we'll meet in the next video
Info
Channel: Code With Clinton
Views: 490
Rating: undefined out of 5
Keywords: add to cart tutorial with django, django add to cart tutorial, add to cart with django, django add to cart, ecommerce website with django, ecommerce website with django python, django ecommerce website, django ecommerce website tutorial, ecommerce site with django and python, django projects for beginners, django project, code with clinton
Id: ViWWR169Tns
Channel Id: undefined
Length: 61min 4sec (3664 seconds)
Published: Sat Jun 26 2021
Related Videos
Note
Please note that this website is currently a work in progress! Lots of interesting data and statistics to come.