Git Product home page Git Product logo

movieda's Introduction

Final Project ๐ŸŽž๏ธ

๋ชฉํ‘œ

  • ์˜ํ™” ์ •๋ณด ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์„œ๋น„์Šค
  • ์ปค๋ฎค๋‹ˆํ‹ฐ

๊ฐœ๋ฐœ ํ™˜๊ฒฝ

  • Django 2.1.15

  • Python 3.7+

  • Node 12.18.X

  • Vue 2.6+

  • Django REST API ์„œ๋ฒ„ & Vue.js

  • SQLite

  • AWS ๋ฐฐํฌ

ํ”„๋กœ์ ํŠธ ๊ธฐ๊ฐ„

  • 2020.06.11(๋ชฉ) - 2020.06.16(ํ™”)

  • ๋ฐœํ‘œ ์ค€๋น„ : 2020.06.17(์ˆ˜)

  • ๋ฐœํ‘œ : 2020.06.19(๊ธˆ)

์„œ๋น„์Šค ๊ฐœ์š”

  1. ์˜ํ™” ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ - The Movie Database(TMDb)
    • ๋ฐ์ดํ„ฐ 50๊ฐœ ์ด์ƒ
  2. ๋ฐ˜์‘ํ˜• ์›น
    • README.md ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ ๋ช…์‹œ ํ•„์ˆ˜
  3. ์˜ํ™” ์ปค๋ฎค๋‹ˆํ‹ฐ ๊ธฐ๋Šฅ
  4. ์˜ํ™” ์ถ”์ฒœ ์„œ๋น„์Šค (์•Œ์•„์„œ ๊ตฌํ˜„) - ๋ฐฉ๋ฒ• ์ถ”ํ›„
  5. ๋””์ž์ธ ๋ฐ ๋ฐฐํฌ (+์œ ์ง€๋ณด์ˆ˜)

ํ•„์ˆ˜ ๊ธฐ๋Šฅ

  • ๊ด€๋ฆฌ์ž

    • ์˜ํ™” CRUD
    • ์œ ์ € ๊ด€๋ฆฌ
  • ์˜ํ™” ์ •๋ณด

    • ์œ ์ € ์˜ํ™” ํ‰์  ๋“ฑ๋ก,์ˆ˜์ •,์‚ญ์ œ
  • ์ถ”์ฒœ ์•Œ๊ณ ๋ฆฌ์ฆ˜

    • ๋“ฑ๋กํ•œ ํ‰์  ๊ธฐ๋ฐ˜ ์˜ํ™” ์ถ”์ฒœ
  • ์ปค๋ฎค๋‹ˆํ‹ฐ(์˜ํ™” ๊ด€๋ จ ์ •๋ณด)

    • ๊ฒŒ์‹œ๊ธ€, ๋Œ“๊ธ€ CRUD (์ƒ์„ฑ, ์ˆ˜์ • ์‹œ๊ฐ„ ํ‘œ๊ธฐ)
    • ๊ฒŒ์‹œ๊ธ€ pagination
    • ๋ณต์ˆ˜์˜ ๊ธฐ๋Šฅ ๊ฒŒ์‹œํŒ, ๊ถŒํ•œ ๋‚˜๋ˆ„์–ด ์œ ์ € ๊ด€๋ฆฌ(ex. ๊ด€๋ฆฌ์ž, ์Šคํƒœํ”„)

2020.06.11

์ž์œ ๋กญ๊ฒŒ ์ปจ์…‰

  1. ํŒ”๋กœ์šฐ : ์˜ํ™” ๊ฐ๋…, ๋ฐฐ์šฐ

    • ๋งˆ์ดํŽ˜์ด์ง€ - ํŒ”๋กœ์šฐ ํ•œ ๊ฐ๋… & ํŒ”๋กœ์šฐํ•œ ๋ฐฐ์šฐ
      • ๊ฐ๋…์˜ ์ž‘ํ’ˆ๋“ค ๋‚˜์—ด
      • ๋ฐฐ์šฐ ์ถœ์—ฐ์ž‘ ๋‚˜์—ด
    • ์ถ”์ฒœ ์•Œ๊ณ ๋ฆฌ์ฆ˜
      • (ํ‰์ ) & ์žฅ๋ฅด + ํŒ”๋กœ์šฐ ํ•œ ๊ฐ๋…, ๋ฐฐ์šฐ ์ถœ์—ฐ์ž‘ํ’ˆ ์ถ”์ฒœ -> ํ‰์ ์ˆœ 5 - 10 (์ถ”์ฒœ์ž‘ํ’ˆ ๊ฐœ์ˆ˜๋Š” ์ถ”ํ›„ ๊ฒฐ์ •)
  2. ๊ตญ๋ฐฅ - ๋“ ๋“ 

    • ์˜ํ™” >> ๋ช‡ ๊ตญ๋ฐฅ? (ex. ์ด์˜ํ™” ๋ณด๋‹ค 1๊ตญ๋ฐฅ ํ• ๋“ฏ;;)
  • ์œ ์ € : ์ƒ๋…„์›”์ผ๋กœ ๋‚˜์ด ๊ณ„์‚ฐ
    • ํ‰์  ํ‘œ๊ธฐ์‹œ ์„ฑ๋ณ„, ๋‚˜์ด๋ณ„ ํ‘œ๊ธฐ

์˜ํ™” ๋ฐ์ดํ„ฐ ์ž…๋ ฅ

  • ์˜ํ™”์ง„ํฅ์› api : ์˜ํ™”๋ฐฐ์šฐ ๊ฒ€์ƒ‰ > ์ถœ์—ฐ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ

  • TMDB : ์˜ํ™” ๋ฆฌ์ŠคํŠธ + ์ถœ์—ฐ ๋ฐฐ์šฐ๋“ค

  • TMDB ์˜ํ™” ์ถœ์—ฐ ๋ฐฐ์šฐ + ์˜ํ™” ์ง„ํฅ์› api ๊ฒ€์ƒ‰ > ์ถœ์—ฐ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ

  • TMDB ์˜ํ™” + ์ถœ์—ฐ ๋ฐฐ์šฐ >> ๋ฐฐ์šฐ๋กœ ์ถœ์—ฐ ์ž‘ํ’ˆ ๊ฒ€์ƒ‰ ๊ฐ€๋Šฅ

2020.06.12

DB ERD

ERD cloud

2020.06.13

  • ERD cloud ๋ชจ๋ธ ์—…๋ฐ์ดํŠธ - Add user favors
  • Update logic - loads movie data

To do list (last update - 2020.06.13)

  1. Django_api
  • ์˜ํ™” ๋ฐ์ดํ„ฐ ์ž…๋ ฅ (TMDB API ์ด์šฉ)

  • django ๋ชจ๋ธ ๊ตฌ์ถ•

  • serializers.py ๋“ฑ DRF ํ™˜๊ฒฝ ์„ค์ •

  • [ ] ManyToMany field์— ํ•ด๋‹นํ•˜๋Š” ์ค‘๊ฐ„ ํ…Œ์ด๋ธ” ์ƒ์„ฑ - model (actor ์ˆ˜๊ฐ€ ๋„ˆ๋ฌด ๋งŽ์Œ)

    • 6/13 - 14 : ์ฃผ๋ง ๋™์•ˆ ํ•ด๊ฒฐํ•˜๊ธฐ
    • actor ๊ทธ๋ฃน ๊ณ ๋ฏผํ•ด๋ณด๊ธฐ
  • ์ถ”์ฒœ์•Œ๊ณ ๋ฆฌ์ฆ˜ : ๋กœ์ง ๊ณ ๋ฏผ (์ฃผ๋ง๊ณผ์ œ)

  1. Vue_front - ์ฃผ๋ง๊ณผ์ œ
  • Data ๋ฐ›์•„์˜ค๊ธฐ
  • ํ™”๋ฉด๊ตฌ์„ฑ
    1. Home(index)
      • a) navbar
        • navigation
        • b) body
        • all movies(carousel, sort by desc)
        • user favor movie(with carousel)
        • c) pagination
    2. User - signup, signin, signout
    3. User Favors - a) favor_actors - b) favor_direcotors - c) favor_genres

2020.06.15

Django

  • ์˜ํ™” ์ถ”์ฒœ ๋กœ์ง
  • url path
  • ์‹œ๊ฐ„ ๋œ๋‹ค๋ฉด JWT ์„ค์ •

Vue.js

  • view, component ๊ตฌ์„ฑ

ํ™”๋ฉด ๊ตฌ์„ฑ

  • Navbar : ์ „์ฒด ์˜ํ™” ๋ฆฌ์ŠคํŠธ, ๊ฒŒ์‹œํŒ,

    • Movieda

    • ํ™ˆ

    • ์ „์ฒด์˜ํ™”

    • ์ถ”์ฒœ์˜ํ™” (์ข‹์•„ํ•˜๋Š”๋ฐฐ์šฐ, ์ข‹์•„ํ•˜๋Š”๊ฐ๋…, ์ข‹์•„ํ•˜๋Š”์žฅ๋ฅด)

    • ์˜ํ™”๊ฒ€์ƒ‰

    • ํšŒ์›๊ฐ€์ž… (~~๋‹˜ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค.)

    • ๋กœ๊ทธ์ธ (๋กœ๊ทธ์•„์›ƒ)

    • ๋งˆ์ดํŽ˜์ด์ง€

      • ํŒ”๋กœ์šฐ ๋ชฉ๋ก (๋ฐฐ์šฐ, ๊ฐ๋…)
    • ๊ฒŒ์‹œํŒ

  • Main : ์ถ”์ฒœ ์˜ํ™”, ์ตœ์‹  ์˜ํ™”(๋‹ค๋ฅธ ์˜ํ™” ๋ชฉ๋ก) - index

    • ์ถ”์ฒœ ์˜ํ™” (8๊ฐœ, ์ข‹์•„ํ•˜๋Š” ์˜ํ™” ์žฅ๋ฅด ์œ„์ฃผ ex. ์ด๋Ÿฐ ์˜ํ™” ์–ด๋•Œ์š”? ์˜ค๋Š˜ ๋ญ ๋ณด์ง€?)
    • ์ตœ์‹  ์˜ํ™”
  • MyPage : (๊ฐœ์ธ์ •๋ณด์ˆ˜์ •), ๋‚ด๊ฐ€ ์“ด ๋ฆฌ๋ทฐ, ํŒ”๋กœ์šฐํ•˜๋Š” ๊ฐ๋…, ๋ฐฐ์šฐ, ์˜ํ™” ๋ฆฌ์ŠคํŠธ - Accounts/mypage

    • main : ๊ฐ„๋žตํ•œ ๋‚ด ์ •๋ณด, ๋‚ด๊ฐ€ ์“ด ๋ฆฌ๋ทฐ, ํŒ”๋กœ์šฐ ๋ฐฐ์šฐ-๊ฐ๋…-์˜ํ™” (๊ฐœ์ˆ˜)

    • ์ถœ์—ฐ ์˜ํ™”(์˜ค๋Š˜ ๋‚ ์งœ 1-2๋‹ฌ ์ž‘ํ’ˆ๋“ค ๋ฆฌ์ŠคํŠธ) or ์ „์ฒด ์ž‘ํ’ˆ ๋ฆฌ์ŠคํŠธ๋ฅผ ์‹œ๊ฐ„์ˆœ

    • ๋”๋ณด๊ธฐ (Modal ์ด์šฉ)

      • ๋ฆฌ๋ทฐ
      • ๋ฐฐ์šฐ - ๋ชฉ๋ก์„ ๋ณด์—ฌ์ฃผ๊ณ  ์ข‹์•„์š”์ทจ์†Œ๊ธฐ๋Šฅ
      • ๊ฐ๋…
      • ์˜ํ™”
  • ๊ฒŒ์‹œํŒ : ์ž์œ  ๊ฒŒ์‹œํŒ (๋ง๋จธ๋ฆฌX ๋‹จ์ˆœ ๊ธ€ ์ž‘์„ฑ๊ณผ ๋Œ“๊ธ€) - Community/index (/community/<int:article_pk>/)

  • ์˜ํ™” - Movies/index

    • ๋””ํ…Œ์ผ : ์ธ๋„ค์ผ, ์ค„๊ฑฐ๋ฆฌ, ์ถœ์—ฐ์ง„, ๊ฐ๋…
      • ์ถœ์—ฐ์ง„ ์ •๋ณด : ๋Œ€ํ‘œ 5๋ช… > ๋”๋ณด๊ธฐ (์ „์ฒด ์ถœ์—ฐ์ง„ ๋ฆฌ์ŠคํŠธ - Modal ์ด์šฉ) ์ด๋ฆ„ ๋ˆ„๋ฅด๋ฉด ์ข‹์•„์š” ๊ธฐ๋Šฅ

Response Data Set

1. MovieApp

1-1. ์˜ํ™” ๋ฐ ์ถ”์ฒœ์˜ํ™”

/movies/

๊ฐœ์ˆ˜ ์ „์ฒด

  • 'data' : ์˜ํ™” ์ „์ฒด ๋ฐ์ดํ„ฐ('id', 'title', 'summary', 'release_date', 'running_time', 'poster', 'genres', 'actors', 'directors',)
  • 'recommend_movies' : ์ข‹์•„์š” ๋ˆ„๋ฅธ ์˜ํ™”๋“ค์˜ ์žฅ๋ฅด ๊ธฐ๋ฐ˜ ์ถ”์ฒœ ์˜ํ™” ๋ฐ์ดํ„ฐ

1-2. ์ข‹์•„ํ•˜๋Š” ๋ฐฐ์šฐ/์ œ์ž‘์ง„/์˜ํ™” (์ œ์ž‘์ง„/์˜ํ™” ๋ฏธ๊ตฌํ˜„)

/movies/like_actor/<int:actor_pk>/

  • ๋กœ๊ทธ์ธ๋œ ์œ ์ €๊ฐ€ ํ•ด๋‹น ๋ฐฐ์šฐ๋ฅผ ์ข‹์•„์š” ํ–ˆ๋‹ค๋ฉด ์ทจ์†Œ, ์•ˆํ–ˆ์œผ๋ฉด ์ข‹์•„์š”
  • add, remove ๋ฉ”์‹œ์ง€ ๋ฆฌํ„ด

/movies/like_director/<int:director_pk>/

  • ๋กœ๊ทธ์ธ๋œ ์œ ์ €๊ฐ€ ํ•ด๋‹น ๊ฐ๋…์„ ์ข‹์•„์š” ํ–ˆ๋‹ค๋ฉด ์ทจ์†Œ, ์•ˆํ–ˆ์œผ๋ฉด ์ข‹์•„์š”
  • add, remove ๋ฉ”์‹œ์ง€ ๋ฆฌํ„ด

/movies/like_movie/<int:movie_pk>/

  • ๋กœ๊ทธ์ธ๋œ ์œ ์ €๊ฐ€ ํ•ด๋‹น ์˜ํ™”๋ฅผ ์ข‹์•„์š” ํ–ˆ๋‹ค๋ฉด ์ทจ์†Œ, ์•ˆํ–ˆ์œผ๋ฉด ์ข‹์•„์š”
  • add, remove ๋ฉ”์‹œ์ง€ ๋ฆฌํ„ด

1-3. ์˜ํ™”๊ฒ€์ƒ‰

/movies/search/

POST keyword ๋ฐ์ดํ„ฐ - form ์ด์šฉ?

  • ํ•ด๋‹น ํ‚ค์›Œ๋“œ๋ฅผ ํฌํ•จํ•˜๋Š” ์˜ํ™” ๋ฐ์ดํ„ฐ(ํ‚ค์›Œ๋“œ ๊ฒ€์ƒ‰ : ์˜ํ™” ์ œ๋ชฉ, ๋ฐฐ์šฐ, ๊ฐ๋…)

1-4. ์œ ์ €ํ”„๋กœํ•„

/profile/<str:username>/

  • 'serializer.data': ์œ ์ € ๋ฐ์ดํ„ฐ('id', 'username', 'favorite_actors', >'favorite_directors', 'favorite_movies')
  • ๋‚ด๊ฐ€ ์“ด ๋ฆฌ๋ทฐ ๋ฐ์ดํ„ฐ : ์œ ์ € ์ •๋ณด๊ฐ€ ์•„๋‹Œ ์œ ์ € id(pk) ๊ฐ’

2. ์ข‹์•„์š” ๊ธฐ๋Šฅ

  • django ๊ตฌํ˜„ or vue ๊ตฌํ˜„
  • ์žฅ๊ณ  > ๊ธฐ์กด ์ข‹์•„์š” ๋ˆŒ๋ €๋Š”์ง€ ์œ ๋ฌด
    - ๋ทฐ > ์–ด๋Š ๋ฐฐ์šฐ, ๊ฐ๋…์„ ๋ˆŒ๋ €๋Š”์ง€

2-1. ์ปค๋ฎค๋‹ˆํ‹ฐ (ํ™ˆ)

/community/

  • ๋ชจ๋“  ๊ฒŒ์‹œ๊ธ€ ๋ณด๊ธฐ
  • ์ „์ฒด article ๋ฐ์ดํ„ฐ

2-2. ์ปค๋ฎค๋‹ˆํ‹ฐ๊ธ€ ์ž‘์„ฑ

/community/create/

POST method. form data - title, content

  • ์ƒˆ๋กœ์šด ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก
  • ๋กœ๊ทธ์ธ ํ•„์ˆ˜

2-3. ๊ฒŒ์‹œ๊ธ€ ๋””ํ…Œ์ผ

/community/<int:article_pk>/

  • GET method : ๊ฒŒ์‹œ๊ธ€ ์ž์„ธํžˆ ๋ณด๊ธฐ (+ ๋“ฑ๋ก๋œ ๋Œ“๊ธ€)
  • PUT method : ๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ • (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก ์œ ์ €)
  • DELETE method : ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œ (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก ์œ ์ €)

2-4. ๊ฒŒ์‹œ๊ธ€ ์ฝ”๋ฉ˜ํŠธ์ž‘์„ฑ

/community/<int:article_pk>/create_comment/

POST method. form data - content

  • ํ•ด๋‹น ๊ฒŒ์‹œ๊ธ€์— ๋Œ“๊ธ€ ๋“ฑ๋ก
  • ๋กœ๊ทธ์ธ ํ•„์ˆ˜

2-5. ๊ฒŒ์‹œ๊ธ€ ์ฝ”๋ฉ˜ํŠธ ์ˆ˜์ •/์‚ญ์ œ

/community/<int:article_pk>/comment/<int:comment_pk>/

  • PUT method : ๋Œ“๊ธ€ ์ˆ˜์ • (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๋Œ“๊ธ€ ๋“ฑ๋ก ์œ ์ €)

  • DELETE method : ๋Œ“๊ธ€ ์‚ญ์ œ (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๋Œ“๊ธ€ ๋“ฑ๋ก ์œ ์ €)


2020.06.16

ํ•„์ˆ˜์ ์ธ ๊ธฐ๋Šฅ์„ ์šฐ์„ ์ ์œผ๋กœ ๊ตฌํ˜„

Community,

Django

  • ์˜ํ™” ์ œ์ž‘์ž/๋ฐฐ์šฐ ๋ฐ์ดํ„ฐ ๊ฐ€์ ธ์˜ค๊ธฐ

    • ๊ธฐ์กด: TMDB - movies/<int:movieID>/credits => papago api๋ฒˆ์—ญ

    • ๋ฐ์ดํ„ฐ ํŒŒ์‹ฑ์—์„œ ํšจ์œจ์„ฑ ์ €ํ•˜โ€‹โ€‹

    • papago api ์ผ์ผ ์‚ฌ์šฉ๋Ÿ‰ ์ดˆ๊ณผ (limit - ์•ฝ 40๊ฐœ ์˜ํ™”)

    • ๊ฐœ์„ : TMDB - movies => original_title๋กœ naver/search_movie ์‚ฌ์šฉ

      (๊ฒ€์ƒ‰๋˜์ง€ ์•Š๋Š” ์™ธํ™” ์ •๋ณด๋งŒ papago api๋กœ ๋ฒˆ์—ญ ํ›„ ์‚ฌ์šฉ.)

      • naver ์˜ํ™”๊ฒ€์ƒ‰ - original_title๋กœ ๊ฒ€์ƒ‰ ์‹œ ์–ป์–ด์ง€๋Š” ๊ฐ๋…/๋ฐฐ์šฐ ์ •๋ณด ์‚ฌ์šฉ ๐ŸŽฅ
      • papago api ์ˆ˜์šฉ๋Ÿ‰ ์ƒ์Šน โ†—๏ธ (limit - ์•ฝ 300๊ฐœ ์˜ํ™”)

  • models & serializer ์ผ๋ถ€ ์ˆ˜์ •

    • movie - release_date | DateTimeField => DateField
    • serializer - review_detail | read_only=True ์ ์šฉ
  • views.py - scrap(์˜ํ™” ๋ถˆ๋Ÿฌ์˜ค๊ธฐ) fix

    • api_scrap ์ค‘ consistency๊ฐ€ ์ผ์น˜ํ•˜์ง€ ์•Š๋Š” ๋ฐ์ดํ„ฐ ์ œ์™ธ
  • [x]

Vue

  • Movie - CSS์ ์šฉ

    • Home | ์ถ”์ฒœ์˜ํ™”(recommendMovie) ์ œ๊ณต
    • Detail | review๋ถ€๋ถ„ ํ‰์  choice_option์œผ๋กœ ์„ ํƒ ๊ฐ€๋Šฅ
  • Accounts - Login, Signup | ์ธ์ฆ์‹คํŒจ์‹œ ์•Œ๋ฆผ๋ฉ”์„ธ์ง€ ์ œ๊ณต

2020.06.17

TodoList

  • ๊ด€๋ฆฌ์ž ์œ ์ € - user.is_staff

  • ์ฝ”๋“œ์ •๋ฆฌ

  • Community - ๊ฒŒ์‹œ๊ธ€ id (์ž๋™์œผ๋กœ 1๋ฒˆ์œผ๋กœ) // ๊ตณ์ด ํ•„์š”ํ•œ๊ฐ€...? - ๊ฒŒ์‹œ๊ธ€ ๋ฐ‘์— ์ฝ”๋ฉ˜ํŠธ์ž‘์„ฑ / pass - ์‚ญ์ œ

    • ~~๊ฒŒ์‹œ๊ธ€ ์ž‘์„ฑ ์‹œ๊ฐ„(์ด์˜๊ฒŒ) > 1์ฐจ ํ•ด๊ฒฐ > ์™„๋ฃŒ
  • README ์ž‘์„ฑ

  • ๋ฐฐํฌ

  • ๋™์˜์ƒ์ œ์ž‘

Django

  • ์ฃผ์„ ๋ฐ ์ฝ”๋“œ ์ •๋ฆฌ
  • ๊ด€๋ฆฌ์ž ์œ ์ € ์ถ”๊ฐ€
  • formatted_date ์ œ๊ณต

Vue

  • ๊ณตํ†ต | ์ž˜๋ชป๋œ ๊ฒฝ๋กœ - 404page ์ถ”๊ฐ€
  • Community view ์ถ”๊ฐ€ | CRD
    • ArticleListView
      • ArticleView
      • ArticleDetail
      • ArticleCreate
  • LikeMovie ๊ธฐ๋Šฅ ์ถ”๊ฐ€
    • ์ข‹์•„์š” ์˜ํ™” ๋ฐ”ํƒ•์œผ๋กœ ์ถ”์ฒœ์˜ํ™” ์ œ๊ณต

3. Django & Vue Update (latest 06.17)

3-1. ์ปค๋ฎค๋‹ˆํ‹ฐ ํ™ˆ

/community/

  • ๋ชจ๋“  ๊ฒŒ์‹œ๊ธ€ ๋ณด๊ธฐ
  • ์ „์ฒด article ๋ฐ์ดํ„ฐ

3-2. ์ปค๋ฎค๋‹ˆํ‹ฐ๊ธ€ ์ž‘์„ฑ

/create

POST method. form data - title, content

  • ์ƒˆ๋กœ์šด ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก
  • ๋กœ๊ทธ์ธ ํ•„์ˆ˜

3-3. ๊ฒŒ์‹œ๊ธ€ ๋””ํ…Œ์ผ

/community/<int:article_pk>/

  • GET method : ๊ฒŒ์‹œ๊ธ€ ์ž์„ธํžˆ ๋ณด๊ธฐ (+ ๋“ฑ๋ก๋œ ๋Œ“๊ธ€)
  • PUT method : ๊ฒŒ์‹œ๊ธ€ ์ˆ˜์ • (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก ์œ ์ €)
  • DELETE method : ๊ฒŒ์‹œ๊ธ€ ์‚ญ์ œ (ํ˜„์žฌ ๋กœ๊ทธ์ธ๋œ ์œ ์ € == ๊ฒŒ์‹œ๊ธ€ ๋“ฑ๋ก ์œ ์ €)

โ€ป ์ฝ”๋ฉ˜ํŠธ - ๊ธฐ๋Šฅ์—์„œ ์ œ์™ธ

3-4. ์ข‹์•„์š” ๊ธฐ๋Šฅ ์ถ”๊ฐ€

/movies/like_movie/<int:article_pk>/

  • user.favorite_movies ๋“ฑ๋ก ์—ฌ๋ถ€์— ๋”ฐ๋ผ ์ข‹์•„์š”/์ข‹์•„์š” ์ทจ์†Œ ๊ฐ€๋Šฅ

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.