Mongoose: count()๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•?

์— ๋งŒ๋“  2010๋…„ 06์›” 28์ผ  ยท  5์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: Automattic/mongoose

๋‚˜๋Š” ๋งŽ์€ ๊ฒƒ์„ ์‹œ๋„ํ–ˆ์ง€๋งŒ count()๊ฐ€ ์ž‘๋™ํ•˜๋„๋ก ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.
๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž‘๋™ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.
User.find({์‚ฌ์šฉ์ž ์ด๋ฆ„: 'john'}).count()

์ด ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
DEBUG: TypeError: undefined๋Š” ํ•จ์ˆ˜๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค.
CALL_NON_FUNCTION์—์„œ(๋„ค์ดํ‹ฐ๋ธŒ)
/lib/mongoose/lib/model.js:177:9์—์„œ

๋‚˜๋Š” ๋˜ํ•œ ์‹œ๋„ํ–ˆ๋‹ค
User.find({์‚ฌ์šฉ์ž ์ด๋ฆ„: 'john'}).count(fn(r) { sys.debug(r); })
๋˜๋Š”
์‚ฌ์šฉ์ž.์นด์šดํŠธ();
...

์ง€์›ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.
์˜ฌ๋ฐ”๋ฅธ ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์‚ฌ์šฉ์ž ์นด์šดํŠธ({},ํ•จ์ˆ˜(์นด์šดํŠธ) { } )

๋ชจ๋“  5 ๋Œ“๊ธ€

์—ฌ๊ธฐ ์œ„์˜ ์˜ค๋ฅ˜๋Š” User.count()๋กœ ํ…Œ์ŠคํŠธํ•œ ๊ณณ์ž…๋‹ˆ๋‹ค. User.find().count()๋กœ ๋‹ค์Œ ์˜ค๋ฅ˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.
์˜ค๋ฅ˜: ๊ฐœ์ฒด [๊ฐœ์ฒด ๊ฐœ์ฒด]์— 'count' ๋ฉ”์„œ๋“œ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค.
์˜ฌ๋ฐ”๋ฅธ ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.
์‚ฌ์šฉ์ž ์นด์šดํŠธ({},ํ•จ์ˆ˜(์นด์šดํŠธ) { } )

๋™์ผํ•œ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ๋Š”๋ฐ ์˜ฌ๋ฐ”๋ฅธ ์ฝ”๋“œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

User.count({},function(err, count) { } )

err ๋งค๊ฐœ๋ณ€์ˆ˜๋ฅผ ์ƒ๋žตํ•˜๋ฉด count ๊ฒฐ๊ณผ๋Š” ํ•ญ์ƒ null์ด ๋ฉ๋‹ˆ๋‹ค(์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ).

DeprecationWarning: collection.count is deprecated, and will be removed in a future version. Use collection.countDocuments or collection.estimatedDocumentCount instead

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰