Bibi's DevLog ๐Ÿค“๐ŸŽ

TIL - [20.09.02] 1์ฐจ ๋ฐœํ‘œ์™€ AWS์—…๋กœ๋“œ ๋ณธ๋ฌธ

TIL

TIL - [20.09.02] 1์ฐจ ๋ฐœํ‘œ์™€ AWS์—…๋กœ๋“œ

๋น„๋น„ bibi 2020. 9. 2. 19:49

๐Ÿ“ ์•Œ๋žŒ ๋ณด๋‚ด๊ธฐ ์œ„ํ•ด์„œ๋Š” ๋ช‡๋ช‡ API์— ์ฝ”๋”ฉ ๋ฏธ๋ค„ ๋’€๋˜ '์•Œ๋ฆผ ์ •๋ณด ์ฃผ๊ณ ๋ฐ›๋Š” ์ฝ”๋“œ'๋„ ๋‹ค๋“ฌ์–ด์•ผ ํ•œ๋‹ค! ์•Œ๋žŒ1๋‚ ์งœ&์‹œ๊ฐ„, ์•Œ๋žŒ2๋‚ ์งœ&์‹œ๊ฐ„ ์ •๋ณด๋ฅผ db๋กœ ์˜ค๊ฒŒ ํ•ด์•ผ. ์ผ์ •ํŽธ์ง‘API์˜€๋‚˜..
->์ผ์ •์ƒ์„ฑ,์กฐํšŒ,ํŽธ์ง‘API ๋“ฑ ๊ฑฐ์˜ ๋‹ค์˜€๋‹ค.. ์„ธ์ƒ์—..ใ…‹ใ…‹ใ…‹

 

TIL

 

1.์ผ์ •์ƒ์„ฑํ•  ๋•Œ radio๊ฐ’(์นดํ†ก์•Œ๋ฆผ/์ด๋ฉ”์ผ์•Œ๋ฆผ)๊ณผ checkbox๊ฐ’(์ข…์ผ) ๊ฐ€์ ธ์™€์„œ db๋กœ ๋ณด๋‚ด๊ธฐ

->์™„๋ฃŒ!

 

2.์ผ์ •์กฐํšŒํ•  ๋•Œ db์˜ ์•Œ๋ฆผ๋‚ ์งœ์™€ ์•Œ๋ฆผ์—ฌ๋ถ€ ์ฒดํฌ ๋ฐ์ดํ„ฐ ๊ฐ™์ด ๋ณด์—ฌ์ฃผ๊ธฐ

->db ์ €์žฅํ•  ๋•Œ ์•Œ๋ฆผ์„ค์ • on_day, day_ago, 3days_ago, week_ago์™€ ๊ฐ™์€ ๊ฐ’์„ ๋„ฃ์–ด ๋†“์•„์„œ
์ด๊ฑธ todo_card์— ๋„ฃ์œผ๋ ค๋ฉด ํ•œ๊ธ€ ํ…์ŠคํŠธ๋กœ ๋‹ค์‹œ ๋ณ€ํ™˜ํ•ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.
์ฆ‰ startdate์— -0, -1, -3, -7๋กœ ๋‚ ์งœ๋ฅผ ๊ณ„์‚ฐํ•ด ๋‚˜ํƒ€๋‚ด ์ฃผ์–ด์•ผ ํ•˜๋Š”๋ฐ ์ฐธ ๋จธ๋ฆฌ๊ฐ€ ์•„ํ”„๋‹ค.ใ… ใ… 
mainia.tistory.com/2564 ์—ฌ๊ธฐ์— ์ž˜ ์ •๋ฆฌ๊ฐ€ ๋˜์–ด ์žˆ๋Š” ๋“ฏ ํ•˜๋‹ค.

์นดํ†ก/์ด๋ฉ”์ผ์•Œ๋ฆผ ox๋ฅผ ๋„ฃ์„ ๋ถ€๋ถ„์— ๊ฐ class๋ช…์„ ์ง€์ • ์„ ํƒ์ž๋กœ ์„ ํƒํ•œ ๋’ค if, else if ๋ฌธ์„ ๋งŒ๋“ค์—ˆ๋‹ค.
์ฐธ๊ณ  : gangzzang.tistory.com/entry/%EC%A0%9C%EC%9D%B4%EC%BF%BC%EB%A6%ACjQuery-%EC%84%A0%ED%83%9D%EC%9E%90

 

โ“ ์กฐ๊ฑด๋ฌธ์„ ๋‹ค ๋งŒ๋“ค์—ˆ๋Š”๋ฐ..
์˜›๋‚  ์ผ์ •์€ ๋‘ ๋ฒˆ์”ฉ ox๊ฐ€ ๋‚˜์˜ค๊ณ , db์˜ true/false๊ฐ’์— ์ƒ๊ด€์—†์ด ๋‹ค ๊ฐ™์€ ox๊ฐ€ ๋‚˜์˜ค๋Š” ๊ดดํ˜„์ƒ์ด ๋ฐœ์ƒํ•œ๋‹ค.

โ“์˜ค๋Š˜ ๋‹ค์‹œ ํ•ด ๋ณด๋‹ˆ ์•„์˜ˆ O,X๊ฐ€ ์•ˆ ๋ถ™๋Š”๋‹คใ… ใ… ใ…  ์ด๊ฒŒ ๋ฌด์Šจ.. ์Šฌ๋ž™์— ์งˆ๋ฌธ์„ ์˜ฌ๋ ค๋†จ๋‹คใ… ใ… 
->coco ๊ฐ€ ๋””๋ฒ„๊น…์„ ๋„์™€์คฌ๋‹ค!! ๐Ÿ™‡‍โ™€๐Ÿ™‡‍โ™€ ์ตœ๊ณ ์ตœ๊ณ ~~
2.์ผ์ •์กฐํšŒ์—์„œ sche_card .append()ํ•˜๋Š” ๋ฐ˜๋ณต๋ฌธ์—์„œ "alert_k","alert_e"๋ผ๋Š” class๋ช…์„ ๊ฐ™๊ฒŒ ์“ฐ๊ณ  ์žˆ์—ˆ์Œ.
๊ฐ™์€ class์— OX()ํ•จ์ˆ˜๋ฅผ ๊ณ„์† ์ ์šฉํ•˜๋‹ˆ O,X๊ฐ€ ์—ฌ๋Ÿฌ ๋ฒˆ ๋ถ™์—ˆ๋˜ ๊ฒƒ์ž„.
๊ทธ๋ž˜์„œ 

let sche_card = `<div class="sche_card" data-id="${a_sche['_id']['$oid']}">
                    <div class="schedule_date">${start_date}~${end_date}</div>
                    <button onclick="readasche(this)">ํŽธ์ง‘</button>
                    <button onclick="delsche(this)">์‚ญ์ œ</button>
                    <li>(${start_time}~${end_time})${todo}</li>
                    ${memo}
                    <li>๐Ÿ’ฌ์นด์นด์˜คํ†ก ์•Œ๋ฆผ - <span class="alert_k${[i]}"></span><br>
                    ๋‚ ์งœ : ${alert_k_date}</span><br>
                    ์‹œ๊ฐ„ : ${alert_k_time}</li>
                    <li>๐Ÿ“ง์ด๋ฉ”์ผ ์•Œ๋ฆผ - <span class="alert_e${[i]}"></span><br>
                    ๋‚ ์งœ : ${alert_e_date}</span><br>
                    ์‹œ๊ฐ„ : ${alert_e_time}</li>
                </div>`

์ด ๋ถ€๋ถ„์˜ class ๋ช…์ธ "alert_k"์™€ "alert_e"๋„ ๋ฐ˜๋ณต๋ฌธ ์ธ์ž?์ธ [i]๋ฅผ ์ ์šฉํ•ด์ฃผ์–ด์•ผ ํ–ˆ์—ˆ๋Š”๋ฐ ํ•˜์ง€ ์•Š์•˜์Œ.
+ ๋ฐฑํ‹ฑ(``)๋‚ด์˜ ๊ฐ’์ด๋ฏ€๋กœ ${}๋‚ด์— [i]๋ฅผ ์ ์šฉํ•ด ์ฃผ์–ด์•ผ ํ–ˆ์Œ. ->์œ„์™€ ๊ฐ™์ด ํด๋ž˜์Šค๋ช…์„ ์ˆ˜์ •!!

์ด๋ ‡๊ฒŒ ์ˆ˜์ •ํ–ˆ์œผ๋ฏ€๋กœ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ OX() ํ•จ์ˆ˜์˜ ๋ฐ˜๋ณต๋ฌธ&์กฐ๊ฑด๋ฌธ ๊ตฌ๋ฌธ๋„ .class๋ฅผ ์ง€์ •ํ•  ๋•Œ

..
let sche_list = response['sche_list'];
for (i = 0; i < sche_list.length; i++) {
      let a_sche = sche_list[i];
      let alert_k = a_sche['alert_k']
      let alert_e = a_sche['alert_e']
      if (alert_k == "true") {
        $('.alert_k' + i).append('โญ•');
        } else if (alert_k == "false") {
        $('.alert_k' + i).append('โŒ')
        }
      if (alert_e == "true") {
        $('.alert_e' + i).append('โญ•');
        } else if (alert_e == "false") {
        $('.alert_e' + i).append('โŒ')
        }
}
..

 

$('.alert_k' + i).append('โญ•') ์™€ ๊ฐ™์ด ํ…์ŠคํŠธ์— ๋ณ€์ˆ˜๋ฅผ ํ•ฉ์น˜๋Š” ๊ฒƒ์ด๋ฏ€๋กœ + ๋ฅผ ์‚ฌ์šฉํ•ด ์ฝ”๋“œ๋ฅผ ์ ์–ด ์ฃผ์–ด์•ผ ํ•œ๋‹ค.

 

*** ์•Œ๋ฆผ1-์นดํ†ก/์ด๋ฉ”์ผ, ์•Œ๋ฆผ2-์นดํ†ก/์ด๋ฉ”์ผ ๊ตฌ์กฐ๊ฐ€ ์•„๋‹Œ..
์นดํ†ก์•Œ๋ฆผ, ์ด๋ฉ”์ผ์•Œ๋ฆผ ์˜ ๊ตฌ์กฐ๋กœ ๋ณ€๊ฒฝํ•ด์•ผ๊ฒ ๋‹ค.
์•Œ๋ฆผ ํ•˜๋‚˜๋„ ์ž˜ ๋ชป ํ•˜๊ณ  ์žˆ๋Š”๋ฐ ๋‘ ๊ฐœ๋ฅผ ๋‹ค๋ฃจ๋ ค๋‹ˆ(์‚ฌ์‹ค์ƒ 4๊ฐœ) ๋„ˆ๋ฌด ๋ณต์žกํ•˜๋‹คใ… ใ… 
์ด๋ฏธ ๋งŒ๋“ค์–ด๋‘” ์ฝ”๋“œ๋Š” ์ฃผ์„์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ์‚ญ์ œํ•ด์•ผ๊ฒ ๋‹ค. 

alert_1_date
alert_1_time
alert_1_katalk
alert_1_email
alert_2_date
alert_2_time
alert_2_katalk
alert_2_email
->
alert_k (์นดํ†ก์•Œ๋ฆผ ์—ฌ๋ถ€)

alert_k_date (์นดํ†ก์•Œ๋ฆผ ๋‚ ์งœ)
alert_k_time (์นดํ†ก์•Œ๋ฆผ ์‹œ๊ฐ„)
alert_e (์ด๋ฉ”์ผ์•Œ๋ฆผ ์—ฌ๋ถ€)
alert_e_date (์ด๋ฉ”์ผ ์•Œ๋ฆผ ๋‚ ์งœ)
alert_e_time (์ด๋ฉ”์ผ ์•Œ๋ฆผ ์‹œ๊ฐ„)

ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐฑ์—”๋“œ๋„ ๋ชจ๋‘ ๋ณ€๊ฒฝ..
-> 1.์ผ์ •์ƒ์„ฑ 2.์ผ์ •์กฐํšŒ 3.์ผ์ •๊ฒ€์ƒ‰ ์™„๋ฃŒ 
-> 4.์ผ์ •ํŽธ์ง‘์ฐฝ์—์„œ ์•Œ๋ฆผ๋„ ์ˆ˜์ • ๊ฐ€๋Šฅํ•˜๊ฒŒ ํ•˜๊ธฐ - ์™„๋ฃŒ
-> 5. ์ผ์ •์‚ญ์ œ๋Š” _id๊ฐ’ ํ™œ์šฉํ•˜๋ฏ€๋กœ ๊ธฐ์กด๊ณผ ๋™์ผ. API ์ „์ฒด ์ˆ˜์ • ์™„๋ฃŒ!

6-1๋ฉ”์ผ ๋ณด๋‚ด๋Š” ํ•จ์ˆ˜ + schedule ํ™œ์šฉ

-> ๋‹ค๋ฅธ 9๊ธฐ ์ˆ˜๊ฐ•์ƒ๋ถ„์ด ์•Œ๋ ค์ฃผ์‹  ๋ฐ”๋กœ๋Š” 'ํ•œ๊ฑธ์Œ ๋”' ๊ฐ€ ์•„๋‹Œ '๊ฐ€์ด๋“œํ”„๋กœ์ ํŠธ'-3 ์ฃผ์‹์ค์ค ์— ์„ค๋ช…์ด ๋” ์ž์„ธํ•˜๊ฒŒ ๋‚˜์™€์žˆ์—ˆ๋‹ค... ๋‚ด์ผ ์ด์–ด์„œ ํ•ด์•ผ๊ฒ ๋‹ค.

->gmail๋ณด๋‚ด๊ธฐ : ๋ณด์•ˆ-2๋‹จ๊ณ„์ธ์ฆ์„ค์ •-์•ฑ ๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ๋ฐ›์•„์„œ ์‚ฌ์šฉํ•ด์•ผ ํ–ˆ์—ˆ๋‹ค! ์ด๋ ‡๊ฒŒ ํ•˜๋‹ˆ ์ž˜ ๋œ๋‹ค :D

โ“ ๊ฐ™์€ ๋ฉ”์ผ์ด ๋‘ ๋ฒˆ์”ฉ ๋ณด๋‚ด์ง„๋‹ค.ใ… ใ…  smtplib์„ ๋” ์ž์„ธํžˆ ๊ตฌ๊ธ€๋งํ•ด๋ณด๋ฉด์„œ ๋””๋ฒ„๊น…ํ•ด์•ผ๊ฒ ๋‹ค. ์ผ๋‹จ ๋‹ค๋ฅธ ๊ธ‰ํ•œ ๋ถˆ๋ถ€ํ„ฐ ๋„๊ณ !!

 

์•ž์œผ๋กœ์˜ ์ˆ˜์ •์‚ฌํ•ญ

*** ์•Œ๋žŒ์ผ์ž ์„ค์ • - ์• ์ดˆ์— db์— ์ €์žฅํ•  ๋•Œ 1์ผ์ „์ด๋ฉด ์‹œ์ž‘์ผ์—์„œ -1์˜ ๋‚ ์งœ, 3์ผ์ „์ด๋ฉด -3์˜ ๋‚ ์งœ๋กœ ์ €์žฅํ•˜๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ”๊ฟ”์•ผ๊ฒ ๋‹ค!! db์— day_ago๋ผ๊ณ  ์ €์žฅ๋˜์–ด ์žˆ์œผ๋‹ˆ ๊บผ๋‚ด ์“ธ ๋•Œ๋งˆ๋‹ค ๋‚ ์งœํ˜•์‹์œผ๋กœ ๋ฐ”๊ฟ”์ค˜์•ผ ํ•ด์„œ ์—„์ฒญ๋‚˜๊ฒŒ ๋ถˆํŽธํ•˜๋‹ค.;;
->> ๊ทธ๋ƒฅ ์•Œ๋žŒ์ผ์ž ์„ค์ •๋„ ์‹œ์ž‘์ผ์„ค์ •๊ณผ ๋™์ผํ•œ input type="date"๋กœ ๋ฐ”๊พธ๊ธฐ๋กœ.

++ '์ข…์ผ'๋ฐ์ดํ„ฐ ์ฒ˜๋ฆฌํ•˜๊ธฐ! ์ฒดํฌ๋˜์–ด ์žˆ์œผ๋ฉด db์— ์ €์žฅํ•  ๋•Œ startdate์™€ ๊ฐ™์€ ๋‚ ์งœ๋กœ enddate ์ €์žฅ

++ ogํƒœ๊ทธ ์ ์šฉํ•˜๊ธฐ

++ ์ผ์ •์‚ญ์ œ, ๋กœ๊ทธ์•„์›ƒ ํ•  ๋•Œ ํ•œ๋ฒˆ ๋” ๋ฌผ์–ด๋ณด๋Š” ์–ผ๋Ÿฟ์ฐฝ ๋งŒ๋“ค๊ธฐ
   ํ•œ๋ฒˆ์— ์‚ญ์ œ, ๋กœ๊ทธ์•„์›ƒ๋˜๋‹ˆ ์‹ค์ˆ˜๋กœ ํด๋ฆญํ–ˆ์„ ๋•Œ ๋‹นํ™ฉ์Šค๋Ÿฌ์›€

++ ์นดํ†ก์•Œ๋ฆผ, ๋ฉ”์ผ์•Œ๋ฆผ ์ฒดํฌ๋ฐ•์Šค์— ์ฒดํฌํ•ด์•ผ๋งŒ ์•„๋ž˜์˜ ์•Œ๋ฆผ ๋‚ ์งœ์™€ ์‹œ๊ฐ„ ์„ค์ •์ฐฝ์ด ๋œจ๊ฒŒ ํ•˜๊ธฐ.
   ์ฒดํฌํ•˜์ง€ ์•Š์•˜๋Š”๋ฐ๋„ ์•Œ๋ฆผ๋‚ ์งœ, ์‹œ๊ฐ„ db์— ์ €์žฅ๋˜๋Š” ๊ฒƒ์„ ๋ฐฉ์ง€!

++ ๋‚ ์”จ์กฐํšŒ. -๋Œ€ํ•œ๋ฏผ๊ตญ ์ „์ฒด ๋‚ ์”จ๋กœ (?)

++ index.html์—์„œ ์•„๋ž˜ 7์ผ, 30์ผ ๋ ˆ์ด์•„์›ƒ์€ ์ˆจ๊น€์ƒํƒœ๋ฅผ ๊ธฐ๋ณธ์œผ๋กœ ์„ค์ •ํ•˜๊ธฐ!

++ startend๋ฅผ ์—†์•จ๊นŒ? ๋‚จ๊ฒจ๋‘๋ ค๋ฉด ์–ด๋–ป๊ฒŒ ๊ฐœ์„ ํ•ด์•ผ ํ• ๊นŒ??

 

์˜ค๋Š˜์€ ์ŠคํŒŒ๋ฅดํƒ€ ๋งˆ์ง€๋ง‰ ์ˆ˜์—…๋‚ !
๋ฐœํ‘œ๋ฅผ ์œ„ํ•ด ๋“œ๋””์–ด ogํƒœ๊ทธ๋„ ๋งŒ๋“ค๊ณ  AWS์— ์„œ๋ฒ„๋„ ์˜ฌ๋ ธ๋‹ค.

doggo-and-me.shop/

 

๋ฉ์ด์™€ ๋‚˜ Doggo & Me

์ผ์ •์„ ๊ด€๋ฆฌํ•˜๊ณ  ์•Œ๋ฆผ์„ ๋ณด๋‚ด์ฃผ๋Š” ๋‹น์‹ ๋งŒ์˜ ์ง‘์‚ฌ ๊ฐ•์•„์ง€, '๋ฉ์ด'๋ฅผ ๋งŒ๋‚˜ ๋ณด์„ธ์š”๐Ÿ•

doggo-and-me.shop

๋‚ด ๋„๋ฉ”์ธ์ด ์ƒ๊ธฐ๋‹ค๋‹ˆ..(1๋…„์งœ๋ฆฌ์ง€๋งŒ)๐Ÿ‘๐Ÿ‘

 

์˜ค๋Š˜์˜ ์ˆœ์ˆ˜๊ณต๋ถ€์‹œ๊ฐ„ - 7:38:26 ๐Ÿ”ฅ