Skip to content

mottoslo/toyproject_sugang

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

97 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’ก ์šฐ๋ฆฌ ํ”„๋กœ์ ํŠธ๋Š”์š”!

์ˆ˜๊ฐ•์‹ ์ฒญ ์‚ฌ์ดํŠธ์ž…๋‹ˆ๋‹ค. ๋กœ๊ทธ์ธ, ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ, ๊ฐ•์˜๋ชฉ๋ก ํ‘œ์‹œ ๋ฐ ๊ฒ€์ƒ‰, ๊ด€์‹ฌ๊ณผ๋ชฉ ๋“ฑ๋ก ๋ฐ ์‚ญ์ œ, ์ˆ˜๊ฐ•์‹ ์ฒญ ๋ฐ ์‹ ์ฒญ๋ชฉ๋ก ์‚ญ์ œ, ์‹œ๊ฐ„ํ‘œ ๊ทธ๋ฆฌ๊ธฐ ๋“ฑ ๊ธฐ๋Šฅ์ด ์žˆ์Šต๋‹ˆ๋‹ค.


๐Ÿ—“ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„

์ด ๊ธฐ๊ฐ„ : 2023.03.27 (์›”) 15:00 ~ 2023.03.30 (๋ชฉ) 21:00

๊ธฐํš ๋ฐ ์„ค๊ณ„ : 2023.03.27 (์›”) 15:00 ~ 2023.03.28 (ํ™”) ์ƒˆ๋ฒฝ
์ œ์ž‘ : 2023.03.28 (ํ™”) ์ƒˆ๋ฒฝ ~ 2023.03.30 (๋ชฉ) 21:00
๋ฐœํ‘œ : 2023.03.30 (๋ชฉ) 21:00 ~ 21:10


๐Ÿ‘ชํŒ€์›

๋ชจ๋‘๊ฐ€ ์–ผ๋–จ๊ฒฐ์— Full-stack ๊ฐœ๋ฐœ

  • ๊ฐ•์žฌํ˜• - ์‹œ๊ฐ„ํ‘œ ๋กœ์ง ๊ตฌํ˜„, JWTํ† ํฐ, API๋ช…์„ธ, DB์„ค๊ณ„
  • ๊น€์„ํ˜ธ - ํšŒ์›๊ฐ€์ž…, ๋กœ๊ทธ์ธ, JWTํ† ํฐ
  • ๊น€ํšจํ™˜ - ๊ฐ•์˜๋ชฉ๋ก, ๊ฒ€์ƒ‰๊ธฐ๋Šฅ, ์‚ฌ์ด๋“œ๋ฐ”, JWTํ† ํฐ
  • ์‹ ๋ฏผ์ฒ  - ๊ด€์‹ฌ๊ฐ•์˜, JWTํ† ํฐ
  • ์™•์ •๋ฏผ - ์‹ ์ฒญ๋‚ด์—ญ, JWTํ† ํฐ


๐Ÿ› ๊ธฐ์ˆ ์Šคํƒ & ํˆด

[ SKILL ]

[ TOOL ]



โœ์ดˆ์•ˆ API๋ช…์„ธ

wireframe_1stdraft api_info_1stdraft



๐Ÿ“‘API ๋ช…์„ธ

์ด๋ฏธ์ง€ 15



๐Ÿ“ˆ๋ฐ์ดํ„ฐ ๋ช…์„ธ

*์ˆ˜์—…์‹œ๊ฐ„ ๋ณ€์ˆ˜ : [{'day' : '์š”์ผ',
                             'start_time' : '1400',
                             'end_time' : '1530'}]

draw_info : [{'class_name' : '๊ณผ๋ชฉ์ด๋ฆ„',
                      'class_color' : '๊ณผ๋ชฉ์ƒ‰๊น”',

                      'class_pos' : [111,112,113,114]

                       }]

db.user_list = {'user_name' : '์ด๋ฆ„',
                         'user_id' : '์•„์ด๋””',
                         'user_pw' : '๋น„๋ฐ€๋ฒˆํ˜ธ'}

db.user_info = {'user_id' = '์•„์ด๋””', 

                          'wishlist' : ['๊ณผ๋ชฉ์ฝ”๋“œ๋“ค'],

                           'enrollment' : ['๊ณผ๋ชฉ์ฝ”๋“œ๋“ค']}

data['result']['enrollment'] = ['STAT420', 'STAT520', 'COSE423]

db.class_list = {'class_name' : '์ˆ˜์—… ์ด๋ฆ„',

                          'instructor' : '๊ฐ•์‚ฌ ์ด๋ฆ„',
                          'class_time : *์ˆ˜์—…์‹œ๊ฐ„๋ณ€์ˆ˜,
                          'class_code' : '๊ณผ๋ชฉ์ฝ”๋“œ',

                          'class_max' : '์ตœ๋Œ€์ˆ˜๊ฐ•์ธ์›'

                          'class_now' : 'ํ˜„์žฌ์‹ ์ฒญ์ธ์›'}

๐Ÿ“ŒAPI ๊ตฌํ˜„ ๊ธฐ๋Šฅ

  • ํšŒ์›๊ฐ€์ž… ๊ธฐ๋Šฅ
  • ๋กœ๊ทธ์ธ ๊ธฐ๋Šฅ
  • ๋กœ๊ทธ์ธ ์ธ์ฆ ๊ธฐ๋Šฅ
  • ๊ฐ•์˜๋ชฉ๋ก ํ˜ธ์ถœ ๊ธฐ๋Šฅ
  • ๊ฐ•์˜๋ชฉ๋ก ๊ฒ€์ƒ‰ ๊ธฐ๋Šฅ
  • ๊ด€์‹ฌ๊ฐ•์˜ ๋‹ด๊ธฐ ๊ธฐ๋Šฅ
  • ๊ด€์‹ฌ๊ฐ•์˜ ํ˜ธ์ถœ ๊ธฐ๋Šฅ
  • ๊ด€์‹ฌ๊ฐ•์˜ ์‚ญ์ œ ๊ธฐ๋Šฅ
  • ์ˆ˜๊ฐ•์‹ ์ฒญ ๊ธฐ๋Šฅ
  • ์‹ ์ฒญ๋‚ด์—ญ ํ˜ธ์ถœ ๊ธฐ๋Šฅ
  • ์‹ ์ฒญ๋‚ด์—ญ ์‚ญ์ œ ๊ธฐ๋Šฅ
  • ์‹œ๊ฐ„ํ‘œ ๊ทธ๋ฆฌ๊ธฐ ๊ธฐ๋Šฅ

๐Ÿ’กํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

๊ฐ•์žฌํ˜•

  • ormData์˜ body์— ๋ฆฌ์ŠคํŠธ๋ฅผ ํƒœ์šธ ์ˆ˜ ์—†๋Š” ๋ฌธ์ œ ๋ฐœ์ƒ
    โ†’ ๋ฐ˜๋ณต๋ฌธ์œผ๋กœ ํ•ด๊ฒฐ
  • myclasspage์—์„œ ํ‘œ ์ž‘๊ฒŒ๋‚˜์˜ค๋Š” ๋ฌธ์ œ
    โ†’ ์‹œ๊ฐ„ํ‘œ table์„ ๋‹ด๊ณ ์žˆ๋Š” ํƒœ๊ทธ์˜ css๊ฐ€ ๋ˆ„๋ฝ๋˜์–ด์žˆ์—ˆ์Œ
  • ์‹œ๊ฐ„ํ‘œ ํ•œ๋ฒˆ ๋” ๋ˆ„๋ฅด๋ฉด hide
    โ†’ table์˜ ๊ธฐ๋ณธ display๋ฅผ hide ํ›„, ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด table์˜ display์˜ต์…˜์„ ๋ณ€๊ฒฝ, button ์ž์ฒด์˜ onclick event์™€ innerHTML๋„ ์ˆ˜์ •ํ•˜์—ฌ ๋ฒ„ํŠผ์˜ ๊ธฐ๋Šฅ, ๋ชจ์–‘์„ ๋ฐ”๊ฟ”์คŒ
  • ๊ทธ๋ ค์ง„ ์‹œ๊ฐ„ํ‘œ์—์„œ ํ•œ ๊ฐ•์˜ ์•ˆ์˜ boarder๋ฅผ ์ง€์›Œ์ฃผ์–ด ์—ํƒ€์ฒ˜๋Ÿผ ๋งŒ๋“ค๊ณ , ๊ฐ•์˜๋ช… ์จ์ฃผ๊ธฐ (๊ตฌ์กฐ๋ณ€๊ฒฝํ•„์š”)
    โ†’ tableํƒœ๊ทธ๋Š” ์ขŒ์—์„œ ์šฐ๋กœ ๊ทธ๋ ค์ง€๊ธฐ ๋•Œ๋ฌธ์— ์ด๋ ‡๊ฒŒ ์ ์šฉํ•˜๋ ค๋ฉด ๋งŽ์ด ๋ณต์žกํ–ˆ๋‹ค. ์• ์ดˆ์— ๊ธฐ๋Šฅ ๊ตฌํ˜„ ์ „์— ์„ค๊ณ„๋ฅผ ์ž˜ ํ•ด์„œ ๊ฐ ๊ตฌ์—ญ์„ div๋กœ ์žก์•˜์œผ๋ฉด ์ข‹์•˜์„ํ…๋ฐ...... ์ถ”ํ›„ ๋น„์Šทํ•œ๊ฑธ ์ง„ํ–‰ํ•˜๊ฒŒ ๋˜๋ฉด ์š”์ผ์ˆœ์„œ๋Œ€๋กœ ๊ทธ๋ ค์ง€๊ฒŒ ํ•˜๊ณ , ๊ฐ ์š”์ผ์„ div์˜ class๋‚˜ id๋กœ ์žก์•„์„œ ํ•˜๋ฉด ์ข‹์„๊ฑฐ๊ฐ™๋‹ค.
  • API ๋ช…์„ธ ๊ฐœ์„  ํ•„์š”
    โ†’ GET, POST ์š”์ฒญ๋“ค์ด ์–ด๋–ค object๋ฅผ ์ฃผ๊ณ ๋ฐ›๋Š”์ง€, ๊ฐ ํ•„๋“œ๋ช…๊ณผ ๋ฐ์ดํ„ฐ ํƒ€์ž…์€ ๋ฌด์—‡์ธ์ง€ ๋ช…์‹œํ•˜์—ฌ ๊ฐœ์„ ํ•จ

<ํ›„๊ธฐ>
์ฒซ ํ”„๋กœ์ ํŠธ์ด์ž github์„ ์‚ฌ์šฉํ•œ ์ฒซ ํ˜‘์—… ๊ฒฝํ—˜์ด์—ˆ๋Š”๋ฐ, ์—ฌ๋Ÿฌ๋ช…์ด ๊ฐ์ž ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•˜๊ณ  ์ด๋ฅผ ํ•ฉ์น  ๋•Œ ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ๋ฌธ์ œ๋ฅผ ๋งŽ์ด ๊ฒฝํ—˜ํ•  ์ˆ˜ ์žˆ์–ด ์ข‹์•˜๋‹ค. ํ”„๋กœ์ ํŠธ ์ฃผ์ œ ์ž์ฒด๊ฐ€ ํฌ๋ง๊ณผ๋ชฉ ๋‹ด๊ธฐ, ์ˆ˜๊ฐ•์‹ ์ฒญ, ์‹œ๊ฐ„ํ‘œ ๊ทธ๋ฆฌ๊ธฐ ๋“ฑ์˜ ๊ธฐ๋Šฅ์œผ๋กœ ๊ฐ๊ฐ์˜ ๊ธฐ๋Šฅ ๊ฐ„์— ๋ฐ์ดํ„ฐ๋ฅผ ์ฃผ๊ณ ๋ฐ›์„ ์ผ์ด ๋งŽ์•„ ์ด๋Ÿฌํ•œ ๊ฒฝํ—˜์„ ํ•˜๊ฒŒ๋œ ๊ฒƒ ๊ฐ™๋‹ค. ์žฌ๋ฐŒ๋Š” ๊ฒฝํ—˜์ด์—ˆ๋‹ค.

๊น€์„ํ˜ธ

  • ๋กœ๊ทธ์ธ ํŽ˜์ด์ง€ ๋กœ๊ทธ์ธ๋ฒ„ํŠผ /ํšŒ์›๊ฐ€์ž… ๋ฒ„ํŠผ ๋งŒ๋“ค๊ธฐ
    โ†’ html์˜ ํƒœ๊ทธ ๊ธฐ๋Šฅ์„ ์ดํ•ดํ•˜๊ณ  onchlick๋ฒ„ํŠผ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  • ํšŒ์›๊ฐ€์ž… ์™„๋ฃŒ ์‹œ ๋กœ๊ทธ์ธํŽ˜์ด์ง€๋กœ ์ด๋™
    โ†’ window.location.reload() ๋ฅผ ์ฐธ๊ณ ํ•ด์„œ ์ ‘๊ทผ
    โ†’ window.location.herf(โ€™/์ด๋™ํ•  ํŽ˜์ด์ง€โ€™) ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
    โ†’ ํšŒ์›๊ฐ€์ž…์‹œ ๋กœ๊ทธ์ธํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋Š” ๊ฐœ๋…๊ณผ if / else ์กฐ๊ฑด๋ฌธ์„ ์ฐธ๊ณ ํ•˜์—ฌ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  • ๋กœ๊ทธ์ธ ์„ฑ๊ณต์‹œ ์•Œ๋ฆผ์ฐฝ ํ›„ ๋‹ค์ŒํŽ˜์ด์ง€๋กœ ์ด๋™/์‹คํŒจ์‹œ ์•ˆ๋‚ด์ฐฝ๊ณผ ํ•จ๊ป˜ ๋กœ๊ทธ์ธํŽ˜์ด์ง€ ๋จธ๋ฌด๋ฅด๊ธฐ
    โ†’ ํšŒ์›๊ฐ€์ž…์‹œ ๋กœ๊ทธ์ธํŽ˜์ด์ง€๋กœ ์ด๋™ํ•˜๋Š” ๊ฐœ๋…๊ณผ if / else ์กฐ๊ฑด๋ฌธ์„ ์ฐธ๊ณ ํ•˜์—ฌ ํ•ด๊ฒฐ ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค.
  • ๋กœ๊ทธ์ธ ์‹œ ํ† ํฐ ๋ฐœ์ƒ ํ›„ ์ฟ ํ‚ค๋กœ ์ €์žฅ
    โ†’ ๋Šฅ๋ ฅ ๋ถ€์กฑ์œผ๋กœ ์ธํ•ด ๊ตฌํ˜„ ๋ชปํ•จ ๊ณต๋ถ€๋ฅผ ๋” ํ•ด์•ผํ•  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

๊น€ํšจํ™˜

  • user_id์™€ class_list db๋“ค๊ฐ„์˜ ์—ฐ๊ฒฐ โ†’ $push ๋กœ ํ•ด๊ฒฐ
    โ†’ $push๋กœ ํ•ด๊ฒฐ
  • class_list ์†์„ฑ ์ถ”๊ฐ€
  • ์‚ฌ์ด๋“œ๋ฐ”์ถ”๊ฐ€ (ํ˜„์žฌ classes ์—๋งŒ ๋“ค์–ด๊ฐ€์žˆ์Œ) static์— css,js sidebar ์ธํฌํŠธ ํ•„์š”
  • ์‚ฌ์ด๋“œ๋ฐ”์— ์‹œ๊ณ„ ์ถ”๊ฐ€์™„๋ฃŒ ์‚ฌ์ด๋“œ๋ฐ” ์ธํฌํŠธ ํ•˜๋ฉด์„œ clock js,css ๋„ ์ธํฌํŠธ ํ•„์š”
  • ๋กœ๊ทธ์ธ ํšŒ์›๊ฐ€์ž… css์ถ”๊ฐ€
  • ํšŒ์›๊ฐ€์ž… ํผ ์กฐ๊ฑด์— ๋”ฐ๋ฅธ ์—๋Ÿฌ๋ฌธ๊ตฌ ์ถ”๊ฐ€

์‹ ๋ฏผ์ฒ 

  • classlist์—์„œ ์ž๋ฃŒ๊ฐ€ ํ˜ธ์ถœ๋˜์ง€ ์•Š์Œ
    โ†’ user_id๋ฅผ ์„ ์–ธํ•˜์—ฌ id ๊ธฐ์ค€์œผ๋กœ ์ž๋ฃŒ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ ํ•ด๊ฒฐ
    โ†’ list์ž๋ฃŒ๋ฅผ ํ˜ธ์ถœํ•˜์—ฌ for๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐ
  • ์ˆ˜๊ฐ•์‹ ์ฒญ ๋ฒ„ํŠผ์ด ์ž‘๋™ํ•˜์ง€ ์•Š์Œ
    โ†’ temp_html์— ${class_code}๋กœ ํ•ด๊ฒฐ
    โ†’ โ€™${class_code}โ€™์˜ โ€˜โ€™๋กœ ๋ฌธ์ž๋ฅผ string๋กœ ํ•ด๊ฒฐ
  • ๊ด€์‹ฌ๊ฐ•์˜ ์‚ญ์ œ๋ฒ„ํŠผ์ด ์ž‘๋™ํ•˜์ง€ ์•Š์Œ
    โ†’ temp_html์— ${class_code}๋กœ ํ•ด๊ฒฐ
    โ†’ โ€™${class_code}โ€™์˜ โ€˜โ€™๋กœ ๋ฌธ์ž๋ฅผ string๋กœ ํ•ด๊ฒฐ
  • ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์ฒดํฌํ•ด์„œ ์‹ ์ฒญ ๋ฐ ์‚ญ์ œ
    โ†’ ์ถ”ํ›„ ์ˆ˜์ • ์˜ˆ์ •
  • ์‹ ์ฒญ๋ฆฌ์ŠคํŠธ ์ค‘๋ณต์ฒดํฌ
    โ†’ ์ถ”ํ›„ ์ˆ˜์ • ์˜ˆ์ •

<ํ›„๊ธฐ>
์ฒซ ํŒ€ํ”„๋กœ์ ํŠธ์˜€๊ณ  github, sourcetree๋ฅผ ์ฒ˜์Œ ์‚ฌ์šฉํ•˜์—ฌ ์šฐ๋ฆฌ๋“ค์˜ ์ž๋ฃŒ๋ฅผ ํ•˜๋‚˜๋กœ ๋ชจ์™€์„œ ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์™„์„ฑํ–ˆ๋‹ค๋Š” ๊ฒƒ์ด ๋„ˆ๋ฌด ๋ฟŒ๋“ฏํ•˜๊ณ  ํฅ๋ฏธ๋กœ์› ๋‹ค.
์‹œ๊ฐ„์ด ๋ถ€์กฑํ•˜์—ฌ ํ•˜์ง€ ๋ชปํ•œ ๊ธฐ๋Šฅ๋“ค์œผ ๊ฐœ์ธ์ ์œผ๋กœ ๋‹ค์‹œ ํ•ด๋ณด๊ณ  ์‹ถ๊ณ , ์„œ๋กœ๊ฐ€ ์†Œํ†ต์„ ํ•˜๋ฉด์„œ ํ•˜๋‚˜์˜ ํ”„๋กœ์ ํŠธ๋ฅผ ์ง„ํ–‰ํ•˜๋Š”๊ฒƒ์ด ์žฌ๋ฏธ์žˆ์—ˆ๋‹ค.

์™•์ •๋ฏผ

  • enrollment ๋ฆฌ์ŠคํŠธ์—์„œ ๊ณผ๋ชฉ์ฝ”๋“œ๋ฅผ ์ถ”์ถœํ•˜์—ฌ ํ•ด๋‹น ๊ณผ๋ชฉ์˜ ์ƒ์„ธ์ •๋ณด๋ฅผ class_list ์ปฌ๋ ‰์…˜์—์„œ ๊ฐ€์ ธ์˜ค๊ธฐ
    โ†’ enrollment๊ฐ€ ๋ฆฌ์ŠคํŠธ์—ฌ์„œ ๋ฐ›์•„์™€์„œ ํ•œ๊บผํ’€ ๋ฒ—๊ธฐ๊ณ  for๋ฌธ์„ ๋Œ๋ ค ํ•ด๊ฒฐ!
  • myclasspage์—์„œ ํ‘œ ์ž‘๊ฒŒ ๋‚˜์˜ค๋Š” ๋ถ€๋ถ„ ํ•ด๊ฒฐํ•˜๊ธฐ
    โ†’ ์‹œ๊ฐ„ํ‘œ ํ…Œ์ด๋ธ”์„ ๋‹ด๊ณ ์žˆ๋Š” div์˜ css๊ฐ€ ๋ˆ„๋ฝ๋จ. ๋ˆ„๋ฝ๋œ ๋ถ€๋ถ„ ์ˆ˜์ •์œผ๋กœ ํ•ด๊ฒฐํ•จ
  • ์ฒดํฌ๋ฐ•์Šค๋ฅผ ์ด์šฉํ•˜์—ฌ ์—ฌ๋Ÿฌ ๊ฐœ๋ฅผ ํ•œ๊บผ๋ฒˆ์— ์‚ญ์ œํ•˜๋Š” ๊ธฐ๋Šฅ ๋งŒ๋“ค๊ธฐ
    โ†’ ๋ฒ„ํŠผ์˜ name ์†์„ฑ์„ ๊ฐ™์€ ์ด๋ฆ„์œผ๋กœ ํ•ด์•ผ ํ•จ
    โ†’ ์ฒดํฌ ๋œ ์ฒดํฌ๋ฐ•์Šค์˜ id๋ฅผ ๊ฐ€์ ธ์™€์„œ each() ๋ฉ”์„œ๋“œ๋ฅผ ์ด์šฉํ•ด ๋ฆฌ์ŠคํŠธ์— push()ํ•˜์—ฌ ๋„˜๊น€
    โ†’ ์ฒดํฌ ๋œ ์ฒดํฌ๋ฐ•์Šค์˜ ์ˆ˜๋ฅผ ์นด์šดํŠธํ•˜์—ฌ ์ฒดํฌํ•˜์ง€ ์•Š์€ ์ƒํ™ฉ์— ๋Œ€ํ•œ ์˜ˆ์™ธ ์ฒ˜๋ฆฌ๋ฅผ ํ•จ
    โ†’ <app.py>์—์„œ ๋ฐ›์€ ๋‚ด์šฉ์ด ๋ฆฌ์ŠคํŠธ๊ฐ€ ์•„๋‹ˆ์—ฌ์„œ ์‰ฝํ‘œ(,)๋กœ split ํ•˜๊ณ , ๋‹ค์‹œ ๋ฆฌ์ŠคํŠธ๋กœ ๋งŒ๋“ฌ
    โ†’ user id๋กœ ๊ฐ€์ ธ์˜จ ์›๋ž˜ ๋ฆฌ์ŠคํŠธ์™€ ์ฒดํฌ ๋œ ๋ฆฌ์ŠคํŠธ ์—ฐ์‚ฐ(๋ฆฌ์ŠคํŠธ ๋นผ๊ธฐ ์—ฐ์‚ฐ ๊ฐ€๋Šฅ!)์œผ๋กœ ์ƒˆ ๋ฆฌ์ŠคํŠธ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ DB๋ฅผ ์ˆ˜์ •ํ•จ
    โ†’ ์ฐธ๊ณ ํ•  ๊ฒƒ์€ mongoDB update๋ฅผ ํ•  ๋•Œ ํ•ญ๋ชฉ์— ๋ฆฌ์ŠคํŠธ๋กœ ๋“ค์–ด์žˆ์œผ๋ฉด ๋ฆฌ์ŠคํŠธ๊ฐ€ ๊ทธ ์•ˆ์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š”๊ฒŒ ์•„๋‹๊นŒ? ์ƒ๊ฐํ–ˆ๋Š”๋ฐ ์•„๋‹˜ ใ…‹_ใ…‹
    โ†’ ['a', 'b', 'c', ...] ๊ฐ€ ['a', 'b', 'c', [new arr], ...] ์ด๋ ‡๊ฒŒ ๋ ๊นŒ ํ–ˆ๋Š”๋ฐ ๊ทธ๋ ‡์ง€ ์•Š๊ณ , ์ž˜ ์ˆ˜์ •๋จ
    โ†’ ์˜ค๋ผํด๊ณผ ๋‹ฌ๋ฆฌ mongoDB๋Š” ๋ฆฌ์ŠคํŠธ๊ฐ€ ๋ฐ์ดํ„ฐ๋กœ ์‚ฝ์ž…๋  ์ˆ˜ ์žˆ์Œ. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— enrollment์˜ ๊ฐ€์žฅ ์ž‘์€ ๋‹จ์œ„๊ฐ€ ๋ฆฌ์ŠคํŠธ์ž„.
    โ†’ ๋ฆฌ์ŠคํŠธ ์•ˆ์˜ ๋‚ด์šฉ๊นŒ์ง€ ์ ‘๊ทผ ๋ชปํ•˜๋Š” ๊ฒƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ๋ฆฌ์ŠคํŠธ๊ฐ€ ๊ทธ ์•ˆ์œผ๋กœ ์‚ฝ์ž…๋˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ๋ฆฌ์ŠคํŠธ ์ž์ฒด๊ฐ€ ์ž˜ ์ˆ˜์ •๋˜์—ˆ์Œ
  • ํ‘œ css
    โ†’ ๋ถ€ํŠธ์ŠคํŠธ๋žฉ์„ ์ด์šฉํ•ด ํ…Œ์ด๋ธ”์„ ์‹ฌํ”Œํ•˜๊ฒŒ ๋””์ž์ธ ํ•จ
  • Auth ํ•จ์ˆ˜ return ๊ฐ’์„ ๋ชป ๋ฐ›์•„์˜ค๋Š” ๋ฌธ์ œ
    โ†’ Auth ํ•จ์ˆ˜ ๋‚ด์˜ ajax ์˜ต์…˜์— async๊ฐ€ ์—†์—ˆ๋Š”๋ฐ ๋„ฃ์–ด์ฃผ๊ณ  false๋กœ ๊ฐ’์„ ์คฌ๋”๋‹ˆ ์ž˜ ๋ฐ›์•„์˜ด
    โ†’ ์ฐธ๊ณ  : https://recollectionis.tistory.com/167
  • ์‚ฌ์ด๋“œ๋ฐ” ํ† ๊ธ€
    โ†’ ์ถ”ํ›„ ์ˆ˜์ • ์˜ˆ์ •

โœจ๊ฒฐ๊ณผ๋ฌผ

<ํšŒ์›๊ฐ€์ž…>

์ด๋ฏธ์ง€ 14

<๋กœ๊ทธ์ธ>

์ด๋ฏธ์ง€ 001

<๊ฐ•์˜๋ชฉ๋ก ์กฐํšŒ>

์ด๋ฏธ์ง€ 002

<๊ฐ•์˜ ๊ฒ€์ƒ‰>

์ด๋ฏธ์ง€ 13

<๊ด€์‹ฌ๊ณผ๋ชฉ ์กฐํšŒ>

์ด๋ฏธ์ง€ 005

<์‹ ์ฒญ๊ณผ๋ชฉ ์กฐํšŒ>

์ด๋ฏธ์ง€ 006



๐Ÿ–ฅ URL

๋ฐฐํฌ URL

http://sugangpage.eba-iyefhen2.ap-northeast-2.elasticbeanstalk.com/

Notion URL

https://www.notion.so/11-225872a369314db6b2e46ea3b2a6cbfc



About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published