Page 379 - Nodejs 교과서 개정2판
P. 379

GET /users৬ POST /users ઱ࣗ۽ ਃ୒੉ ٜযৢ ٸ੄ ۄ਋ఠੑפ׮  пп ࢎਊ੗ܳ ઑഥೞח ਃ୒җ ࢎਊ੗ܳ

         ١۾ೞח ਃ୒ਸ ୊ܻ೤פ׮  GET /ীࢲب ࢎਊ੗ ؘ੉ఠܳ ઑഥ೮૑݅ GET /usersীࢲח ؘ੉ఠܳ +40/ ഋध
         ਵ۽ ߈ജೠ׮ח ੼ীࢲ ର੉о ੓णפ׮


         ࢎਊ੗ܳ ١۾ೡ ٸח ݢ੷ 모델.create ݫࢲ٘۽ ੷੢೤פ׮  ੿੄ೠ झః݃ী ࠗ೤ೞ૑ ঋח ؘ੉ఠܳ ֍঻ਸ
         ٸח ކҳझо ী۞ܳ ߊࢤदఈפ׮  _idח ੗زਵ۽ ࢤࢿؾפ׮


         GET /users/:id/comments ۄ਋ఠח ؆Ӗ ׮௸ݢ౟ܳ ઑഥೞח ۄ਋ఠੑפ׮  find ݫࢲ٘ীח ২࣌੉ ୶оغ
         য ੓णפ׮  ݢ੷ ؆Ӗਸ ॵ ࢎਊ੗੄ ই੉٣۽ ؆Ӗਸ ઑഥೠ ٍ populate ݫࢲ٘۽ ҙ۲ ੓ח ஸ۩࣌੄ ׮௸

         ݢ౟ܳ ࠛ۞ৢ ࣻ ੓णפ׮  Comment झః݃ commenter ೙٘੄ refо User۽ غয ੓ਵ޲۽ ঌইࢲ VTFST ஸ۩

         ࣌ীࢲ ࢎਊ੗ ׮௸ݢ౟ܳ ଺ই ೤஝פ׮  commenter ೙٘о ࢎਊ੗ ׮௸ݢ౟۽ ஖ജؾפ׮  ੉ઁ commenter ೙
         ٘ח ObjectIdо ইפۄ Ӓ ObjectIdܳ о૓ ࢎਊ੗ ׮௸ݢ౟о ؾפ׮


          routes/comments.js
           const	express	=	require('express');
           const	Comment	=	require('../schemas/comment');


           const	router	=	express.Router();


           router.post('/',	async	(req,	res,	next)	=>	{
           		try	{
           				const	comment	=	await	Comment.create({
           						commenter:	req.body.id,
           						comment:	req.body.comment,
           				});
           				console.log(comment);
           				const	result	=	await	Comment.populate(comment,	{	path:	'commenter'	});
           				res.status(201).json(result);
           		}	catch	(err)	{
           				console.error(err);
           				next(err);
           		}
           });


           router.route('/:id')
           		.patch(async	(req,	res,	next)	=>	{
           				try	{
           						const	result	=	await	Comment.update({
           								_id:	req.params.id,
           						},	{
           								comment:	req.body.comment,
           						});
           						res.json(result);
   374   375   376   377   378   379   380   381   382   383   384