Skip to content

yuminh54/Create-Calendar

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

17 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Calendar

1. ๋ชฉํ‘œ

  • jquery์™€ javascript async/await๋ฅผ ํ™œ์šฉํ•œ Client Side Rendering ๊ตฌํ˜„
  • ์ „์ฒด Calendar๋ฅผ ๋งŒ๋“  ํ›„ ์ผ์ • ๋“ฑ๋กํ•˜๊ธฐ
    • ํ•˜๋ฃจ ์ผ์ • - ํ•˜๋ฃจ์ข…์ผ ์„ ํƒ ๊ฐ€๋Šฅ
    • ์—ฐ์† ์ผ์ •
    • ๋ฐ˜๋ณต ์ผ์ •
  • ์ผ์ • ์ƒ์„ธ๋ณด๊ธฐ ๊ตฌํ˜„
  • ์›” / ์ผ ๊ธฐ์ค€ ๋‹ฌ๋ ฅ๊ณผ ์ผ์ •๊ณผ ๋‹ฌ๋ ฅ ๊ตฌํ˜„

2. ์‚ฌ์šฉ ๊ธฐ์ˆ 

  • Node.js + express.js + sequelize.js + mysql + javascript +jquery

  • Node.js์˜ ORM๋ชจ๋“ˆ์ธ sequelize.js๋ฅผ ์‚ฌ์šฉ

    • ์ฝ”๋”ฉ์˜ ๋ฐ˜๋ณต์ ์ธ ๋ถ€๋ถ„์„ ์ค„์ผ ์ˆ˜ ์žˆ๊ณ  SQL์˜ ์˜์กด์ ์ธ ์ฝ”๋”ฉ์—์„œ ๋ฒ—์–ด๋‚˜ ์ƒ์‚ฐ์ ์ธ ์ฝ”๋”ฉ์ด ๊ฐ€๋Šฅํ•˜๋ฉฐ ์œ ์ง€๋ณด์ˆ˜๊ฐ€ ํŽธ๋ฆฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉํ•จ

3. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์„ค๊ณ„

์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 3 50 37

  • ์ผ์ •์„ ๋“ฑ๋กํ•˜๊ธฐ ์œ„ํ•œ calendars table ์ƒ์„ฑ
    • ์ œ๋ชฉ/๋‚ด์šฉ, ์‹œ์ž‘/์ข…๋ฃŒ ๋‚ ์งœ, ์‹œ์ž‘/์ข…๋ฃŒ ์‹œ๊ฐ„, ๋ฐ˜๋ณต ์œ ๋ฌด, ํ•˜๋ฃจ์ข…์ผ ์œ ๋ฌด, ์ƒ์„ฑ/์ˆ˜์ • ์‹œ๊ฐ„
  • sequelize๋ฅผ ํ™œ์šฉํ•˜์—ฌ table ์ƒ์„ฑ

4. ๊ธฐ๋Šฅ

public/javascripts/calendar.js file์— calendar ๊ธฐ๋Šฅ์„ ์œ„ํ•œ ๊ฑฐ์˜ ๋ชจ๋“  code๊ฐ€ ์ž‘์„ฑ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.

  1. ์ „์ฒด calendar ์ƒ์„ฑ

    • ์ „์ฒด Calendar๋ฅผ ๋งŒ๋“ค๊ธฐ ์œ„ํ•˜์—ฌ generateCalendar ํ•จ์ˆ˜๋ฅผ ์ƒ์„ฑํ•˜์˜€๊ณ , ๋น„๋™๊ธฐ๋ฅผ ๋™๊ธฐ ์ฒ˜๋ฆฌ ํ•˜๊ธฐ ์œ„ํ•˜์—ฌ async/await๋ฅผ ์‚ฌ์šฉํ•˜์˜€๋‹ค.
    // public/javascripts/calendar.js
    async function generateCalendar(date)
   
* `<`๋ฅผ ํด๋ฆญํ•˜๋ฉด ์ด์ „ ๋‹ฌ๋กœ ์ด๋™ํ•˜๋ฉฐ, `>`๋ฅผ ํด๋ฆญํ•˜๋ฉด ๋‹ค์Œ ๋‹ฌ๋กœ ์ด๋™ํ•œ๋‹ค.
   
   ```javascript
   // '<' ํด๋ฆญ์‹œ, ์ด์ „ calendar๋กœ ์ด๋™
   $('#previous').click(function() {
     ...
   });
   
   // '>' ํด๋ฆญ์‹œ, ๋‹ค์Œ calendar๋กœ ์ด๋™
   $('#next').click(function() {
   	...
   });
  • Calendar ์ƒ์„ฑ ์™„๋ฃŒ

    ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 05 06
  1. ์ผ์ • ๋“ฑ๋ก Modal ์ƒ์„ฑ

    • ์ผ์ • ๋“ฑ๋ก์„ ์œ„ํ•œ Modal ์ƒ์„ฑ
    • ๋“ฑ๋กํ•˜๊ณ  ์‹ถ์€ ๋‚ ์งœ๋ฅผ ๋ˆ„๋ฅด๋ฉด Modal Open
    $('.week, .daily-calendar').click(function(e) {
    	...
      $('#start-date-picker').val(todayId)
      $('#registerSchedule').modal('show')
    });
    ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 07 46
  2. ์ผ์ • ๋“ฑ๋ก

    • ํ•˜๋ฃจ ์ผ์ • ๋“ฑ๋ก - ํ•˜๋ฃจ์ข…์ผ์„ ์ฒดํฌํ•˜๋ฉด ์‹œ์ž‘/์ข…๋ฃŒ ์‹œ๊ฐ„ ์ž…๋ ฅํ•˜์ง€ ์•Š์Œ

      ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 13 39 ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 14 36
    • ์—ฐ์† ์ผ์ • ๋“ฑ๋ก

      ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 17 34 ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 18 17
    • ๋ฐ˜๋ณต ์ผ์ • ๋“ฑ๋ก

      • ๋งค์›” ๋ฐ˜๋ณต์— ์ฒดํฌํ•˜๋ฉด, ์ผ์ •์ด ๋งค์›” ๋ฐ˜๋ณต๋œ๋‹ค.

        ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 26 15

        ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 27 04 ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 27 54

  3. ์ผ์ • ์ƒ์„ธ ๋ณด๊ธฐ

    • popover๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ผ์ •์„ ํด๋ฆญํ•˜๋ฉด ์ผ์ •์„ ์ƒ์„ธ๋ณด๊ธฐ ํ•  ์ˆ˜ ์žˆ์Œ
    ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 29 24
  4. ์›”/์ผ ์ผ์ • ๋ณด๊ธฐ

    • ์›”์„ ํด๋ฆญํ•˜๋ฉด ์›” ๋‹ฌ๋ ฅ์œผ๋กœ ์ผ์ •์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ณ , ์ผ์„ ํด๋ฆญํ•˜๋ฉด ์ผ ๋‹ฌ๋ ฅ์œผ๋กœ ์ผ์ •์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

    • ์›” ๋‹ฌ๋ ฅ

      ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 49 06
    • ์ผ ๋‹ฌ๋ ฅ

      ์Šคํฌ๋ฆฐ์ƒท 2019-10-24 ์˜คํ›„ 4 51 12

About

๐Ÿ—“ Node.js + express.js +jquery + Mysql์„ ํ™œ์šฉํ•œ Calendar ์ œ์ž‘

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors