I swear this tutorial is far better than the premium (paid) ones that we see on Udemy or other e-learning platform. You are so much knowledgeable about the topics that i'm just stunned . Big respect for you and thanks for changing the lives of thousands of software engineers by making them understand actually the core concepts.
@niteshswarnakar
3 жыл бұрын
exactly
@zachfenton608
2 жыл бұрын
no adds, no rubbish, just a nice london accent
@rogut8
2 жыл бұрын
could not agree more
@knightofcarrion7358
21 күн бұрын
and most importantly, straight to the point.
@NetNinja
4 жыл бұрын
Make sure you place the blogs/create GET route ABOVE the /blogs/:id GET route in the code. Otherwise express will fire the /blogs/:id handler for requests to /blogs/create.
@TechnoDB
4 жыл бұрын
Oh... I was stuck at this and it took my time. Also, you've mentioned this stuff in your next video. :v
@ashishchourasia2830
4 жыл бұрын
I am getting 'TypeError: Cannot read property 'id' of undefined' at the params line. VS code wasn't showing the intellisense for it. Please help
@andressiri
4 жыл бұрын
@@ashishchourasia2830 what fix this for me was going back to index.ejs and on the tag make sure the href link has the same spacing with the ejs tags like in the video.
@LavishArora11
4 жыл бұрын
Thanks man, that's where it got stuck.
@krasimirkraev8716
4 жыл бұрын
I dont get this. Can you explain a bit more please.
@SALMANKHAN-zz4gi
4 жыл бұрын
i feel butterflies in my stomach . the excitement of understanding the concept and yearning to apply it to a project is too much . Thanks ninja
@layeekromah4799
4 жыл бұрын
This is by far the best crash course ever, feels almost like the best premium course on nodejs. The style of teaching rocks!
@Shakeel714
3 жыл бұрын
This series on NodeJS is better than any other series/course on YoutTube or Udemy
@stana_andrei4752
4 жыл бұрын
Can you make a tutorial on how to connect a react component with node backend?
@dnynu
4 жыл бұрын
Yaa I also want 👍
@F4ILCON
4 жыл бұрын
Keep in mind that this is server side rending using EJS, nodejs render html to the browser, now React, Angular, Vue they have different approach, so you need to make http request from react to reach the routes in nodeJS, you also probably need set CORS on nodejs. Create nodejs Server with route and react app to call these route.
@AccessCode101
4 жыл бұрын
@@F4ILCON Sounds like you know what you're talking about. Can you make a quick video, please!
@alexanderbugay6752
4 жыл бұрын
Maybe you might want to check out some videos on the topic from another coding guru: Part 1: kzitem.info/news/bejne/uat8qpeQenSad4Y Part 2: kzitem.info/news/bejne/rK-Nx4x3mICnh2U He also has MERN stack mini series which I found really useful. Though NetNinja's accent is 1000 times better so I'm also waiting for this tutorial
@jmbeatsbbx
4 жыл бұрын
Which Node features would you use if you had React already tho?
@kopilkaiser8991
3 ай бұрын
Brilliant tutorial. I've learnt quite a lot from watching this. I would highly recommend all to watch this excellent informative and simple node.js crash course 😊🤝 You are a brilliant and exceptionally great teacher. Being able to convey your knowledge by explaining patiently.
@NetNinja
3 ай бұрын
That means a lot, thank you so much :)
@LoveisHell85
3 жыл бұрын
Please make a react/node/SQL tutorial. I would love to see a complete fullstack project (ecommerce site perhaps). I would be more than happy to pay for a premium course. Thank you for the great content!
@mikoajpaszkowski2985
3 жыл бұрын
I just LOVE that moment when I need to pause the video to say: "Ahaaaaaaaaaaaaa, it's amazing!"
@NetNinja
3 жыл бұрын
Thank you so much!!
@tannerbarcelos6880
4 жыл бұрын
Was trying to do MERN stuff before really getting my node, express and mongodb core skills down. Realized I was just copying tutorials and not learning. I am gonna watch this whole series and learn a ton. Just from laying here watching this, I understood everything from past knowledge or just good JavaScript skills and it’s exciting because I’m really trying to learn fullstack development while also learning it in school academically. Thank you for all your videos brother !
@ericpodhorecki5427
3 жыл бұрын
best node course online from far. Amazing work!!
@NetNinja
3 жыл бұрын
Thanks so much :)
@pwrs7
8 ай бұрын
Loved the content. Gave me great learning over the weekend. I loved how he builds the pieces early on and how they all come together at the end to form an application. Not only gives you the details on how it can be done, but also why things are done the way they are done. Loved it. Huge thanks.
@NetNinja
8 ай бұрын
That's awesome to hear :) thanks so much for watching
@iamabhirupdatta
3 жыл бұрын
If anyone getting undefined value in req.body for the post request , add the following before any route: app.use(express.urlencoded({extended: true})); app.use(express.json());
@vladdobritoiu4187
2 жыл бұрын
@Ahmed Haron this comment should be pinned
@raihanar5323
9 ай бұрын
@@vladdobritoiu4187yes should be pinned
@raihanar5323
9 ай бұрын
pin this
@LuisVictorSilvaSantos
6 ай бұрын
ty sir
@kithenry
7 ай бұрын
i like how structured this is, how every topic from #1 to #last builds so well onto each other.
@NetNinja
7 ай бұрын
Thanks :) that means a lot
@mrmeinept
2 жыл бұрын
That feeling when you spend 2 hours reading tutorials that aren't helpful and then find that one video who helps you in less than 30 minutes:
@davefinn6031
Жыл бұрын
Shaun you are a legend. I am in the middle of an intensive assessment for a position currently and everytime I run into a problem, be it in Vue, node js or SQL you seomhow seem to have the answer at some corner or the internet. Keep up the amazing work!
@malcolmcolindixon
4 жыл бұрын
Great work as always Shaun, just completed your Udemy modern Javascript course a few days ago and then started this series, it's all coming together now. Would really like to see working with Postgresql sometime, I'm sure it's similar concepts to this though.
@matthew78uk
3 жыл бұрын
So much content in a single video! All the basics of CR(U)D, organised and explained very well! Many Thanks indeed!
@pipertime1
3 жыл бұрын
This is well taught! It's very complex! Why? It seems PHP can do all this much easier and not as complex. It's feels like trying to reinvent the wheel. It may just be me......... I have learned a lot from Shaun on Udemy!
@manasnagelia
3 жыл бұрын
Totally agree. PHP is easier. But, Node.js is faster than PHP, and PHP is getting outdated, so I suggest sticking with Node.js.
@chisangamumba2961
Жыл бұрын
Well, that's why you should create an Ajax Application. It ensures a complete separation of Client side code from Server-Side code. 🤷♂️
@stanisawjarocki1747
2 жыл бұрын
// If you get error around 19:11, which looks like this: CastError: Cast to ObjectId failed for value "style.css" (type string) at path "_id" for model "Blog" // Then simply remove from details.ejs // I don't understand why, but with only this: const id = req.params.id; console.log(id); // id looks fine, but when you add this below: Blog.findById(id) .then((result) => { res.render("details", { title: "Blog Details", blog: result }); }) .catch((err) => { console.log(err); }); // another id shows up in console: 6308f2bbcb373829482ab874 style.css // Is anyone able to explain this?
@adetunjiojekunle1502
Жыл бұрын
I have this same error as well
@adetunjiojekunle1502
Жыл бұрын
[SOLVED] add '/' before styles.css in head.ejs, so you have it as '/styles.css'
@dolusdirectu
Жыл бұрын
@@adetunjiojekunle1502 Thx m8
@prismanic24
Жыл бұрын
Took me an entire day to figure out why I was getting this error, thanks!
@LandusBakasima
3 ай бұрын
😂😂this man is a legend ..am now a back end developer in one day guys
@theone3746
Жыл бұрын
Even though these videos are long, there is not one second of fluff. Beautiful.
@MuhammadZubair-co5jl
3 жыл бұрын
Greate videos (Thank you ) Sir, It can be also done by putting a (href) property in a(anchor tag)and set it value to '/blogs', without redirecting to the blogs page using JSON (lots of steps involves).
@condensedmatter118
2 жыл бұрын
Underrated comment. Not sure why he did it that way but this is ALOT easier.
@codedynamics1
3 жыл бұрын
@netninja how excited you get when something works 😂👨💻 love it!!😂
@martinsmifff
4 жыл бұрын
Hi Shaun, again a great tutorial. Did you know about the express middleware "method-override", is is quite neat because it allows you to simulate DELETE and PUT requests using the normal form, with just a hidden field. Tis would simply things a great deal as you wouldn't need to use the JavaScript.
@shaheryarshaikh2572
4 жыл бұрын
Hey Can you help me how to use it?
@shaheryarshaikh2572
3 жыл бұрын
@For Google Kuriwada thanks❤️i already Used it 9 months back still thanks
@husrevmustafalale2369
10 ай бұрын
I've recently started this tutorial series and I bet it's the most valuable tutorial even among the paid ones
@NetNinja
10 ай бұрын
Hope you're enjoying it :)
@ArmanAghajanyan-eh1tn
4 ай бұрын
Best ever tutorial. thank you Shaun Pelling. Huge contribution to learners!!!
@NetNinja
4 ай бұрын
Glad it was helpful! :)
@anthonyuzoka8294
8 ай бұрын
Seriously do you think i need another course on nodejs, this your crash course is the premium course for me, thank you
@hackmeornot2196
4 жыл бұрын
I buy a lot of course in UDEMY, and I didnt understand mostly, and when i found shaun channel i regret in buying these course. THis channel teach me everything... can you make a single tutorial about local storage? Thank you so much shaun..
@elpheno
4 жыл бұрын
This session was more difficult for me; I 'll try again later. Thank you Boss
@LucXX36
4 жыл бұрын
Great, like always. Thank you! This whole course is such a nice refreshing
@spacecorp1669
2 жыл бұрын
Why are we NOT updating a document ?
@jackfrost8969
4 жыл бұрын
If only you also had added the update part, that would have been so perfect. I wonder why you left it out though.
@erniea5843
3 жыл бұрын
so you can try to see if you can figure it out baed on the examples :). Not that hard with the GET & DELETE route examples. just use PUT the the applicable mongoose method. Best way to learn!
@huzaifashaikh6384
4 жыл бұрын
please make a series of node and react combined I can only understand your way of teaching on the whole internet. Love the way u teach it.
@thomasm1964
2 жыл бұрын
Oooh my head hurts now! Content is excelletn as always but definitely need to play this one again!
@zachfenton608
2 жыл бұрын
this is so awesome. I have learned a lot. I still have trouble with the mongodb not picking up the posts. I had to comment out all the code that related to it since it was crashing the app.
@sebastianmyrcha1034
3 жыл бұрын
I am also a big fan of all of your courses. But I am not experienced and a little bit confused. After the Vue course I thought that the standard is to use frontend app in framework like VEU, and some backend app which REST API serving data in JSON format. After this course I am not sure, because there is a different solution. So which solution is better, and why. 1) Rest API with express.js and Mongo DB, and frontend application with VUE 2) Backend serving html pages with EJS view engine
@rajithasri8426
4 жыл бұрын
Hello sir, can u make MERN stack courese?
@omarkouta9720
2 жыл бұрын
I used another way to delete a blog... 1- clicking on the delete link in the details screen. 2- it deletes the blog from database with "FindbyIdanddelete(id)". 3- redirect to the main page ('/blogs'). And it works, but I don't know if it is okay or not. May be there is a problem I didn't notice. Please tell me Shaun if there is any problem in this way.
@LubieArbuzy
4 жыл бұрын
Great content as always!
@MenaseDebel
6 ай бұрын
express explained simply and clearly thank you NetNinjas
@NetNinja
6 ай бұрын
Glad it was helpful!
@MenaseDebel
5 ай бұрын
@@NetNinja yeah i wonder if you work video on payment integration with MERN for e-commerse site
@vally8027
3 жыл бұрын
very exciting, you are the best instructor, thanks for considering this topic
@fredpourlesintimes
2 жыл бұрын
It's weird : In your tutorial, you write .then((response) => { response.json() }) to get the redirection attribute, but it doesn't work - my side -, if I don't return response.json(). Edit : apparently, it's because we use return only with curly brackets, otherwise we don't have to. Thanks for this really useful chapter.
@harshitkumar5875
2 жыл бұрын
Thanks man !! wasted half an hour searching for the error 🥲🥲
@jeikashu
Жыл бұрын
For future people, why it doesn't work is: with curly brackets we need to write 'return response.json()' because otherwise the code doesn't return anything and the next then() doesn't receive any data. Without the curly brackets, JS assumes that respone.json() is the return value for the then method, and we get the 'data'
@shadmanmartinpiyal4057
3 жыл бұрын
Please do a full MERN Stack course.
@alisonmaciel314
3 жыл бұрын
I've been stuck for almost a day on post request, didn't know what I was doing wrong and nothing seems to help with my problem. Came here and in less than 10 minutes you already saved me with the "express.urlencoded" tip, ty!
@zakhariihusar6975
9 ай бұрын
I have a question about those dynamic routes like /blogs/:id . What happens if you past incorrect id? Then your code will try to find incorrect id in the DB and throw an error? And then you'd handle that error by redirecting to 404? Do I understand correctly? Coz I used to struggle with React Router while trying to implement routing only on the front end...
@rodo200__
4 жыл бұрын
aunque no entiendo ingles pero se ve excelente lo que haces, a cada palabra que hablas tengo que traducir y no encuentro cursos en español eres genio
@laxmanjonchhen6593
3 жыл бұрын
Me encantó tu dedicación al aprendizaje, realmente te apasiona aprender.
@muskaan7895
3 жыл бұрын
The only part which I found a little difficult 😬 especially that delete.
@alearg89
4 жыл бұрын
Thanks a lot! i am bit overwhelm since #9. I was coming along fine, i dont know what happend :( Anyone feeling the same?
@MrIshumaru
3 жыл бұрын
same, in the back of my head i'm just thinking, there has to be an easier way to do this with how far computing has come. taking notes and writing in the margins explaining what things do in your own words help
@andromilk2634
5 ай бұрын
There was something which I was wondering when you create your request types : instead of using the name /blogs for a POST request, so the same as /blogs for a GET request, I assume that could you have picked any other term for this POST request instead and it would have worked without any problem?
@DylanL9
4 жыл бұрын
Do you think you can create a tutorial about using node-fetch and creating a project where you would use a stock API for example?
@user-sm1ue1ek2v
10 күн бұрын
Best node tutorial❤
@NetNinja
10 күн бұрын
Thanks!
@mikegogl
3 жыл бұрын
Thanks man you are fantastic. I am learning a lot. Honestly, thank you!
@inspiredomkar1239
4 ай бұрын
Rather than using then and catch we can simply make use of await. Not using await is unnecessarily increasing number of lines.
@valentinvalet2916
Жыл бұрын
thankl you for make uni a little easier for me
@alrikmessner196
6 ай бұрын
When you did href="/styles.css" without the slash, everything works until you want the blog details...And then a GET /blogs/styles.css happens. When you miss the logged additional GET, you just wonder, how the following stack trace could happen 😅
@visualismanformuslims673
3 жыл бұрын
Ever best explaining, You are a great teacher, may Allah bless you. 😇
@bluemodize7718
2 жыл бұрын
best tutorial i've ever seen
@rodo200__
4 жыл бұрын
podrias hacer un curso completo de stack MEVN de Javascript y con estilos de Vuetify seria excelente
@Slimboyfat1979
8 ай бұрын
Love your videos. Still relevant and helpful
@NetNinja
7 ай бұрын
Awesome to hear :) love your username!
@darpananeja4751
3 жыл бұрын
Beautiful course!!! Amazing satisfaction!
@Alwalou
Жыл бұрын
After A whole year of my previews comment I still see the delete part the most complicated
@yinonb172
4 жыл бұрын
best node.js tutorial ever
@SPLUGA
23 күн бұрын
the app.post('/blogs'...) shouldn't it run upon the case '/blogs/create'... ie app.post('/blogs/create'...) ?
@muhammadjunaid2329
3 жыл бұрын
But it adds event listener on the very first [a.delete]. How I can fix it?
@bbbiii2341
Жыл бұрын
Nailed it. U r legitimate Ninja
@RonWaller
2 жыл бұрын
You keep mentioning that "this is asynchronous". How do you know when "something" is asynchronous or not? Is it documented somewhere? Also, you are using .then() syntax. How would you use async/await with this? Thanks
@programwithviggo2197
2 жыл бұрын
You can check the documentation to see if it's asynchronous or returns a promise. If you're using VS Code try and hover over it and see if it'll give you such information.
@idontstudyforamidterm1069
Жыл бұрын
your videos help me sm man
@NetNinja
Жыл бұрын
That's awesome to hear :) thank you
@evilservo
4 жыл бұрын
IS there not an express.js delete method like get and post?
@daliusbeckjr.3918
10 ай бұрын
is there an example of making an update route path. I don't know if I am on the right track with the one I made. nevermind :D I just figured out how to do an update method for my crud application. also thank you for the course. You are literally one of my top sources to go to when I am interested in learning more for the frontend in my full stack journey.
@samuelehnimely9297
Жыл бұрын
Thanks so much for this course. It's so amazing. can you please consider implementing image uploading with node express and mogodb.
@bencepandi3568
3 жыл бұрын
Any idea why do I get "undefined" when I try to console log the id? I have express, bodyParser, everything set properly.
@priyadarsimishra7909
4 жыл бұрын
Awesome Video 👍, can you make a firebase/firestore + react native app
@papadong
4 жыл бұрын
Nice tutorial as always. Thank you
@johnnychang3456
3 жыл бұрын
Not sure if anyone has the same issue: id = req.params.id returns a string with space at front. It leads to error when Blog.findById(id). I have to trim() id to get the desired result: const id = req.params.id.trim() I resolved the issue, but I have no idea why it's happening... anyone??
@danyalsajid123
3 жыл бұрын
Yes i got the same issue. Thanks for the solution btw.
@shanetravel
3 жыл бұрын
yeah i got the same issue. thank you for this.
@toluolawumi3288
3 жыл бұрын
Thanks for this solution, ran into it now also
@spiderduckpig
3 жыл бұрын
I have the same problem, thanks for the solution
@divsyntax9720
Жыл бұрын
I had to use this.... '/blogs/:id([0-9a-fA-F]{24})'; 🤷♂
@UzuigweGideo
4 ай бұрын
Bro u are a genius ❤
@NetNinja
4 ай бұрын
@neahnderthal
3 жыл бұрын
15:47 he said deez nuts. absolute madman
@shilpadolai4228
4 ай бұрын
@23:31 can we not use href directly with the delete button providing the id in the url just like we did for the details page. that way we dont have to write evrything we wrote in the script tag??
@SENPAI-mi6sz
3 жыл бұрын
what vscode theme you are using? and if u have time pls make a video about some useful vscode extensions. and ty so much for those courses
@segafrompk
4 жыл бұрын
Hey Shaun, how does node distinguish between /blogs/:id and /blogs/create request? Since id is not defined as an number, wouldn't it try to find blog with an ID of "create" and fail?
@NetNinja
4 жыл бұрын
You are correct - the create route should be below the :id route :)
@@longnt7375 thanks dude u helped me out of this error. I wasted 2hrs searching for what happened
@darkmojojojo
2 жыл бұрын
I just ran into this error and moving app.get('/blogs/create' ...) above both app.get('/blogs/:id' ...) and app.delete('/blogs/:id' ...) seems to fix it.
@parv69
Жыл бұрын
@@srichandrasiripuram4724 same bro T-T
@martinn1071
3 жыл бұрын
This Is pure gold !
@narimennari1207
Жыл бұрын
good job , it 's verry helpfull
@Samuel-ns5jb
2 жыл бұрын
Master Ninja, how did you learn all these stuffs? You are really really good.
@kurokurovich
3 жыл бұрын
the route /blogs/create needs to be above the routes that you pass parameters
@MagicOfNorway123
Жыл бұрын
Wow, been struggling with this for an hour. Thanks, that fixed it immediately!
@siomarapantarotto
11 ай бұрын
I was wondering why the app that was working fine suddenly presented an error 2 days later and your post fixed the problem. Many thanks. 👋
@talhayerlikaya5199
3 жыл бұрын
when you download course to github ? İ have an issue and cant fix it
@HonorableBacon
Ай бұрын
is there an easier way to delete blogs now? that whole delete part was a mess
@_rahiali
3 жыл бұрын
everything was working fine till the end but now idk what when I go to create.ejs it cannot load the css file. I get a long error but starts with Cast to ObjectId failed for value "style.css" at path "_id" for model "Blog". it only happens on create.ejs all other pages load the css fine any idea?
@_rahiali
3 жыл бұрын
why does create and detail urls are blogs/create and blogs/detail we don't even have that directory
@user-cc6nr1cf1r
3 жыл бұрын
I had a similar mistake. Then i changed a link from "styles.css" to "/styles.css" and it started working fine.
@sohump7904
3 жыл бұрын
@@user-cc6nr1cf1r thank you so much I was stuck on this problem for a long time
@aengtech
3 жыл бұрын
@@user-cc6nr1cf1r I've been scrolling for this comment for over an hour now. Thank you for this. This forward slash has caused more damage to my code than any other error. Thanks again
@sulaimang5517
3 жыл бұрын
@@user-cc6nr1cf1r thank you very much
@silfion2395
Жыл бұрын
Great tutorial, is there an example of put request with this type of logic?
@tolakanofficial1565
Жыл бұрын
Can you show how to update the data? Because I can’t get the data after I submit it. (PUT method) Thank you in advance.
@someoneontheinternetuvenev6268
3 жыл бұрын
Awesome crash courses!
@IAmSamuelCharpentier
4 жыл бұрын
I think is should be const endpoint = `/blogs/${e.target.dataset.doc}`; in case there's mode than one 'a.delete' elements on the page 🤷🏻♂️
@IAmSamuelCharpentier
4 жыл бұрын
I know, I know, not a JS course
@bhumijain271
20 күн бұрын
im getting error in delete one udefined type i dont know what to do i use all methods pls hepl if any one can
@Blenberg
2 жыл бұрын
Could you help me. How can i add image to this blog?. I tried Multer,but i couldn't display image
@bartoszsowa5140
2 жыл бұрын
Can anybody explain me why when I type in fetch in details.ejs " .then((response) => response.json() ) " it works, but when i type ".then((response) => { response.json() })" (with curly braces), then I get an undefined error? Like the curly braces were forbidden just in this one case...
@SeeRjED
2 жыл бұрын
Old comment now but in case someone else finds this you need to use the return keywork when using curly braces. Without curly braces the return is implicit.
@cyrusharoon85
4 жыл бұрын
Sir, please make Node bootcamp with ecommerce and React with Redux ecommerce on udemy paid courses. You are an awesome instructor.
@maheshnavoor
Жыл бұрын
Please help me I got error in delete operation When click delete in console show "Unexpected token '
@parv69
Жыл бұрын
did u find any sol!! i am stuck
@igwennaemeka6006
2 жыл бұрын
nice job mr net ninja , but honestly speaking I've been trying this delete request on my app but its not working and I'm really depressed right now
@phourin879
3 жыл бұрын
In detail.ejs when i send delete request i've got this error at the line 7: 5| 6| >> 7| 8| 9| 10| Cannot read property 'title' of null
@venndi8867
2 жыл бұрын
Old question, but if somebody need a solution, here it is. I have just deleted a the href attribute by the delete button in the details ejs, which was created automatically when you press "a" and then enter.
@nightcrawler6618
Жыл бұрын
@@venndi8867 OMG, I spent way to much time trying resolve the same error. How did you even figure this out? Anyways that helped. Thanks!
@grandwizardnoticer8975
4 жыл бұрын
How do we PUT, or otherwise edit and save an existing blog post? I have: * created an 'edit.ejs' based on 'create,' but with all textareas in the form. * put it in a sub dir to distinguish it from others for sake of the router. * added button to the details page that direct-links to edit.ejs: * used all textareas in form to get full, editable text back into form So the problem is that it currently creates a new, edited version of the original blog. What's the best way of getting it to update rather than create a new blog? Thanks!
@thatsalot3577
2 жыл бұрын
Hey, I was having sort of an error when I defined the app.get('/blogs/:id') before app.get('/blogs/create') as for no reason it was treating 'create' as an id however it works when I define the blogs/create above.
Пікірлер: 368