๐Ÿฆ Python Online Store ๋งŒ๋“ค๊ธฐ 4ํŽธ - Mongo DB Compass ์„ค์น˜ ๋ฐ ์‚ฌ์šฉ

yohan-record[web]ยท2022๋…„ 7์›” 28์ผ
0

python onlinestore ๊ฐœ๋ฐœ์ผ์ง€

๋ชฉ๋ก ๋ณด๊ธฐ
4/25
post-thumbnail

๐ŸŽˆ Front End Developer ์˜ Back End ๋„์ „๊ธฐ ! ๐ŸŽˆ

์ด ๊ธ€์€ PROJECT LION : ํ˜ธ์ฝ”์น˜ ๊ฐ•์‚ฌ๋‹˜์˜ ๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉฐ ์ฐธ๊ณ ํ•œ ๊ธ€์ž…๋‹ˆ๋‹ค.

์ž‘์—… ์ค‘, ๊ฐœ๋ฐœ๊ณผ์ • ์ •๋ฆฌ ๋ฐ issue๊ฐ€ ๋˜์—ˆ๋˜ ๋ถ€๋ถ„๋“ค์„ ๊ณต์œ  ๋ฐ ๊ธฐ๋กํ•˜๊ณ ์ž ์ž‘์„ฑํ•˜๊ฒŒ ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

1. Mongo DB Compass๋ž€?

โœ MongoDB ์—์„œ ์ œ๊ณตํ•˜๋Š” GUI ํ™˜๊ฒฝ์˜ MongoDB Client -> MongoDB์˜ ๋ฐ์ดํ„ฐ๋ฅผ ์‰ฝ๊ฒŒ ๊ด€๋ฆฌํ•  ์ˆ˜ ์žˆ๋„๋ก ์ œ๊ณตํ•ด ์ฃผ๋Š” ๋„๊ตฌ์ธ ์…ˆ์ด๋‹ค.

์ €์žฅํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ํ™•์ธ/์ˆ˜์ •/์‚ญ์ œ๊ฐ€ ๊ฐ€๋Šฅํ•˜๋ฉฐ ์ƒ์„ฑ ๋˜ํ•œ ๊ฐ€๋Šฅํ•˜๋‹ค.

๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉฐ ์ฒ˜์Œ์œผ๋กœ issue๊ฐ€ ๋ฐœ์ƒํ•˜์ง€ ์•Š์€ chapter ์ด๋‹ค. ๐Ÿ˜Ž
๋ฌผ๋ก , ์‰ฌ์šด ๋‹จ๊ณ„์ธ๊ฒƒ์€ ๋งž์ง€๋งŒ ์‰ฌ์šธ์ˆ˜๋ก ๋” ์™„๋ฒฝํžˆ ์ดํ•ดํ•˜๊ณ ์ž ๋…ธ๋ ฅํ–ˆ๋‹ค.

์ถ”ํ›„์— ์ฒ˜์Œ๋ถ€ํ„ฐ ์ž‘์—…๋ฌผ์„ ๋‹ค์‹œ ๋งŒ๋“ค์–ด ๋ณผ ๋•Œ, ๊ธฐ์ดˆ๋ฅผ ๋‹ค์ ธ๋‘” ๊ฒƒ์ด ๋ถ„๋ช… ๋น›์„ ๋ฐœํ•  ๊ฒƒ์ด๋ผ ํ™•์‹ ํ•œ๋‹ค๐Ÿ—ƒ๏ธ

๐ŸŽ‰ ๋ชฉํ‘œ

  1. ๋‹ค์šด๋กœ๋“œ
  2. ์„ค์น˜
  3. ์—ฐ๋™

๐Ÿ“Œ ์ž‘์—… ์ˆœ์„œ

  1. MongoDB Atlas site ์ ‘์†

  2. Database -> cluster์˜ connect click

  3. Connect using MongoDB Compass
    = ์ด์ „ ๊ฒŒ์‹œ๊ธ€์—์„œ๋Š” flask์™€ ์—ฐ๋™์„ ์œ„ํ•ด Connect your application ์„ ์„ ํƒํ–ˆ์ง€๋งŒ, ์ง€๊ธˆ์€ Compass๋ฅผ ์„ค์น˜ ํ›„ ์—ฐ๋™ํ•  ๊ฒƒ์ด๋ฏ€๋กœ ํ•ด๋‹น ๋ฒ„ํŠผ ํด๋ฆญ !

  4. ๊ฐ์ž์— ๋งž๋Š” ๊ฐœ๋ฐœํ™˜๊ฒฝ select ๋ฐ Download Compass click

  5. New Connection -> Paste your connection string (SRV or Standard)
    = 2) ํด๋ฆญ ์‹œ ๋ณด์—ฌ์ง€๋Š” popup์—์„œ connection string์„ ๋ณต์‚ฌ ํ›„ connect

    ๐Ÿ”– password ๋Š” ์ฒ˜์Œ user ๋ฅผ ๋“ฑ๋กํ•  ๋•Œ ์‚ฌ์šฉํ•œ password ๋กœ ์ž…๋ ฅํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

  6. ์ด์ „ ๊ฒŒ์‹œ๊ธ€์—์„œ flask ์™€ ์—ฐ๋™ test๋ฅผ ์œ„ํ•ด online_store DB๋ฅผ ์ƒ์„ฑํ•ด ๋‘์—ˆ๋‹ค.
    ์˜ฌ๋ฐ”๋ฅด๊ฒŒ ์—ฐ๋™์ด ๋˜์—ˆ๋‹ค๋ฉด ํ‘œ์‹œ๊ฐ€ ๋  ๊ฒƒ์ด๋‹ค. ํ™•์ธ!

๐ŸŽ‰ Compass ์„ค์น˜ ๋ฐ ์—ฐ๋™์ด ์™„๋ฃŒ๋˜์—ˆ๋‹ค !

์‰ฝ๊ฒŒ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ์„ธํŒ…๋˜์–ด ์žˆ์—ˆ์œผ๋ฉฐ, ์ˆœ์ฐจ์ ์œผ๋กœ ๋ฌธ์ œ์—†์ด ๋งˆ๋ฌด๋ฆฌ ์‹œํ‚ฌ ์ˆ˜ ์žˆ์—ˆ๋‹ค.

data๋ฅผ ์ˆ˜์ • ๋ฐ ๋“ฑ๋ก, ์‚ญ์ œ๋„ ํ•  ์ˆ˜ ์žˆ๋‹ค.
data๋ฅผ ์ƒ์„ฑํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” collection -> add data-> Insert Document ํด๋ฆญ

์ž‘์—… ์ „, ์–ด๋–ค issue ๋“ค์ด ๊ธฐ๋‹ค๋ฆฌ๊ณ  ์žˆ์„ ์ง€ ์„ค๋ œ๋Š”๋ฐ, ์˜ˆ์ƒ๊ณผ๋Š” ๋‹ค๋ฅด๊ฒŒ ์ž˜ ํ’€๋ฆฌ๋‹ˆ ํ—ˆ๋ฌดํ–ˆ๋‹ค(?)

์„ค์น˜ํ•˜๋ฉด์„œ, ๋จธ๋ฆฌ์†์— ์ •๋ฆฌํ•ด ๋ณธ ๊ฒƒ๋“ค์„ ์ˆœ์ฐจ์ ์œผ๋กœ ๋ฉ”๋ชจํ•ด ๋ณด๋ ค๊ณ  ํ•œ๋‹ค.

  1. Database -> cluster์˜ connect click -> connection string ์„ ํ†ตํ•ด cluster ์— ์ ‘์†
  2. cluster > database ์กด์žฌ
  3. database -> online_store
  4. database > collection -> test_connection
  5. database > collection > document -> key value

์•ž์œผ๋กœ MongoDB๋ฅผ ์‚ฌ์šฉํ•  ๋•Œ,
collection์„ ์ƒ์„ฑ ํ›„ document ๋“ค์„ ๋งŒ๋“ค์–ด ๋‚˜๊ฐˆ ๊ฒƒ์ด๋‹ค.

ํ˜„์žฌ OnlineStore ๋ฅผ ๋ชฉํ‘œ๋กœ ์žก๊ณ  ์ž‘์—… ์ค‘์ด๋ฏ€๋กœ ๋ช‡๊ฐ€์ง€ ์˜ˆ์‹œ๋ฅผ ์ƒ๊ฐํ•ด ๋ณด์•˜๋‹ค.

store๋Š” ์ƒํ’ˆ์„ ํŒ๋งคํ•˜๋Š” ๊ณณ์ด๊ณ  -> ๊ตฌ๋งคํ•˜๋Š” ์‚ฌ์šฉ์ž ๊ฐ€ ์กด์žฌํ•˜๋ฉฐ -> ํŒ๋งค ํ›„ ๋ฐฐ์†ก์„ ์œ„ํ•ด์„œ๋Š” -> ๋ˆ„๊ฐ€ ๊ตฌ๋งคํ–ˆ๋Š”์ง€ ์‚ฌ์šฉ์ž์˜ ์ •๋ณด๊ฐ€ ํ•„์š”ํ•˜๋‹ค.

์ฆ‰, member์— ๋Œ€ํ•œ ๊ด€๋ฆฌ ๋˜ํ•œ ํ•„์š”ํ•ด ์งˆ ๊ฒƒ์ด๋‹ค.

์ƒํ’ˆ์ •๋ณด์— ๋Œ€ํ•œ data๋ฅผ ์ €์žฅํ•˜๊ณ ์ž ํ•  ๋•Œ,

1-1. ์ƒํ’ˆ์ •๋ณด collection ์ƒ์„ฑ
1-2. collection > document = ์ƒํ’ˆ์ •๋ณด์˜ ๋‚ด์šฉ
1-3. document = ์ƒํ’ˆ ๊ณ ์œ  id๊ฐ’, ์ด๋ฆ„, ๊ฐ€๊ฒฉ ๋“ฑ๋“ฑ..

์‚ฌ์šฉ์ž์— ๋Œ€ํ•œ ์ •๋ณด ์ž…๋ ฅ ๋ฐ ์ €์žฅ

2-1. ์‚ฌ์šฉ์ž collection ์ƒ์„ฑ
2-2. collection > document = ์‚ฌ์šฉ์ž ์ •๋ณด์— ๋Œ€ํ•œ ๋‚ด์šฉ
2-3. document = userid, password, ์ฃผ์†Œ์ง€ ๋“ฑ๋“ฑ..

๐Ÿ“ ๊ธฐ์ดˆ๋‹จ๊ณ„์ง€๋งŒ ์•„์ฃผ ์ค‘์š”ํ•œ ์„ค์น˜ ๊ฐ€ ๋์ด ๋‚ฌ๋‹ค !

๊ฐ•์˜๋ฅผ ๋“ค์œผ๋ฉฐ ์ž‘์—…๋ฌผ๋งŒ ํ™•์ธํ•˜๊ณ  ๋‹ค์Œ ์ˆœ์„œ๋กœ ๋„˜์–ด๊ฐ€๋Š” ๊ฒƒ์ด ์‹œ๊ฐ„๋„ ์ ˆ์•ฝ๋˜๊ณ  ๊ฒฐ๊ณผ๋ฌผ๋„ ๋นจ๋ฆฌ ๋ณผ ์ˆ˜ ์žˆ๋Š” ๋ฐฉ๋ฒ•์ด๋‹ค.

ํ•˜์ง€๋งŒ, ์ตํžˆ๊ณ  ๋ณต์Šตํ•˜๋ฉฐ ๋‚ด๊ฒƒ์œผ๋กœ ๋งŒ๋“ค๊ธฐ ์œ„ํ•ด ์ •๋ฆฌํ•˜๋Š” ๋‹จ๊ณ„๊นŒ์ง€ ๊ฑฐ์น˜๋‹ˆ ์‹œ๊ฐ„์€ ์˜ค๋ž˜ ๊ฑธ๋ฆฌ์ง€๋งŒ, ํ™•์‹คํžˆ ์ตํž ์ˆ˜ ์žˆ๋Š” ๊ณ„๊ธฐ๊ฐ€ ๋˜๋Š” ๊ฒƒ ๊ฐ™๋‹ค.

๋‹ค์Œ์‹œ๊ฐ„์—๋Š” ๋“œ๋””์–ด ์„ค์น˜๊ฐ€ ๋์ด๋‚ฌ์œผ๋ฏ€๋กœ !! ๐Ÿ˜Ž

flask ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ data๋ฅผ ์ƒ์„ฑ, ์ €์žฅ, ์‚ญ์ œ, ์ˆ˜์ •ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ๊ณต๋ถ€ํ•ด ๋ณด๊ฒ ๋‹ค.

profile
๐Ÿฑโ€๐Ÿ Front End Developer

0๊ฐœ์˜ ๋Œ“๊ธ€