- ๋ง๋ ์ฌ๋๋ค
- ์ฃผ์ ๊ธฐ๋ฅ
- ์ฃผ์ UI ํน์ง
- ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ชจ๋ธ๋ง
- ์ํ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ
- ํ๊ธฐ
๊ธฐํ, ์ค๊ณ ๋ฐ ๊ตฌํ ๊ณผ์ ์ ๋ฐ์์ ์ ๊ธฐ์ ์ผ๋ก ํ์ ํ์ต๋๋ค. ๊ฐ์๊ฐ ์ฃผ๋ํ ๊ธฐ๋ฅ๊ณผ ๋ถ์ผ๋ฅผ ์์ ํฉ๋๋ค.
-
์ค๋ํ
- ๋ฐ์ดํฐ ์์ง ๋ฐ ๊ฐ๊ณต
- ๊ฒ์ ๋ฐ ์ํ ์ถ์ฒ ์๊ณ ๋ฆฌ์ฆ ๊ธฐํ
- USER ๋ชจ๋ธ ์ ์ ๋ฐ USER ๊ธฐ๋ฅ ๊ตฌํ
-
์ ํ๋ฆผ
- ์๊ณ ๋ฆฌ์ฆ ๊ตฌํ
- UX/UI ๋์์ธ ๊ตฌํ
back
$ cd final-pjt-back
$ python -m venv venv
$ source venv/Scripts/activate
$ pip install -r requirements.txt
$ python manage.py migrate
$ python manage.py loaddata movies/vectordata_300.json
$ python manage.py runserver
front
$ cd final-pjt-front
$ cd movie-cli
$ npm install
$ npm run serve
- ์ฌ์ฉ์์ ์ฌ์ดํธ ์ด์ฉ ํ๋์ ์์งํ์ฌ ๊ฐ์ธํ ์ถ์ฒ ๊ตฌํ
- ์ค์ ๊ตฌํ ์ ๋ : 90%
- ์ถ์ฒ
- ์ฌ์ฉ์๋ ์ ๊ท๊ฐ์ ์ ์ฝ 300๊ฐ์ ์ํ ๊ฐ์ด๋ฐ ๋ฌด์์๋ก ์ถ์ฒ ๋ฐ์ต๋๋ค.
- ์ต์ด๋ก ๊ณ ๋ฅธ ์ํ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก ํ์ฌ ์ฌ์ฉ์์ ์ทจํฅ์ ๋ถ์ํฉ๋๋ค.
- ์ดํ ์ํ
์์ธํ์ด์ง
์ ๋ค์ด๊ฐ๊ฑฐ๋๋ฆฌ๋ทฐ
๋ฅผ ๋จ๊ธฐ๋ฉด ์ทจํฅ์ ๋ฐ์ํฉ๋๋ค. - ๋ถ์ํ ์ทจํฅ์ ๋ง์ถฐ์
๊ฐ์ธ๋ณ ์ถ์ฒ
์ด ์งํ๋ฉ๋๋ค. - ํ์๊ฐ์
์ ์ต์
์ผ๋ก ์ ํํ
๋์ด
,์ฑ๋ณ
์ ๋ฐ๋ผ ์ถ์ฒ์ด ์งํ๋ฉ๋๋ค.- ๋ ์ค ํ๋๋ง ์ ํํ ๊ฒฝ์ฐ ๋๋จธ์ง ์ต์ ์ ๋๋ค์ผ๋ก ์งํ๋ฉ๋๋ค.
- ๋ง์ด ์ ํํ
์ฅ๋ฅด
์ ๋ฐ๋ผ ์ถ์ฒ์ด ์ด๋ค์ง๋๋ค.
- ๊ฒ์
- DB์ ์๋ ์ํ ์ค ์ ๋ชฉ๊ณผ ๋ฐฐ์ฐ์ ๋ฐ๋ฅธ ๊ฒ์๊ธฐ๋ฅ์ ์ง์ํฉ๋๋ค.
- ์๊ณ ํธ
- youtube์ ์๋ ํด๋น ์ํ ์๊ณ ํธ์ ๋ณด์ฌ์ค๋๋ค.
- ๋ฆฌ๋ทฐ
- ๊ฐ ์ํ์ ๋ํ์ฌ
๋ฆฌ๋ทฐ
์ํ์
์ ๋จ๊ธธ ์ ์์ต๋๋ค. - ๋ฆฌ๋ทฐ์ ์์ ํ์ ์
์ค์๊ฐ์ผ๋ก ๋ฐ์
๋์ด ํ์๋ฉ๋๋ค. - ๋ณธ์ธ์ด ์์ฑํ ๋ฆฌ๋ทฐ๋ฅผ ์์ , ์ญ์ ํ ์ ์์ต๋๋ค.
- ๊ฐ ์ํ์ ๋ํ์ฌ
- ํ์๊ฐ์ ์ ์ต์ ์ผ๋ก ๋์ด์ ์ฑ๋ณ์ ์ ํํ ์ ์์ต๋๋ค.
- ํ์์ ๋ณด ์์ ๋ฐ ํํด๋ฅผ ์ง์ํฉ๋๋ค. ์ด ๋์๋ ๋น๋ฐ๋ฒํธ ์ ํจ์ฑ ๊ฒ์ฌ๊ฐ ์ด๋ฃจ์ด์ง๋๋ค.
- ๋ฐ์ํ ์น
- ์ฌ์ฉ์์ ํ๋ฉด ํฌ๊ธฐ์ ๋ง๊ฒ ์ถ์ฒ ์ํ ํฌ์คํฐ ์ด๋ฏธ์ง ํฌ๊ธฐ์ ์๊ฐ ์กฐ์ ๋ฉ๋๋ค.
- ์ฌ์ฉ์ ํ๋ฉด์ ๋ง์ถฐ์ ๋์์ธ์ด ์กฐ์ ๋ฉ๋๋ค (๊ฒ์์ฐฝ, ํต๊ณ์๋ฃ, ๊ฒ์๊ฒฐ๊ณผ)
- UX๋ฅผ ๊ณ ๋ คํ ํ์์ธ์ฆ์ฒ๋ฆฌ
- ํ์๊ฐ์
, ๋ก๊ทธ์ธ ๋ฑ ํ์์ธ์ฆ ์ฒ๋ฆฌ๋ฅผ
router-link
๊ฐ ์๋modal
๋ก ์ฒ๋ฆฌํ์ฌ ํ์๊ฐ์ ํ ๋ค์ ํ์ผ๋ก ์ด๋ํด์ผ ํ๋ ๋ถํธํจ์ ๊ณ ๋ คํ์์ต๋๋ค.
- ํ์๊ฐ์
, ๋ก๊ทธ์ธ ๋ฑ ํ์์ธ์ฆ ์ฒ๋ฆฌ๋ฅผ
- UX๋ฅผ ๊ณ ๋ คํ ์ํ ์์ธ์ค๋ช
- ์ด์ ์์น์ ์๊ด์์ด ์ํ ์์ธ์ค๋ช
์ผ๋ก ์ด๋ํ๋ฉด ์๋์ผ๋ก
ํ๋ฉด ์๋จ์ผ๋ก ์ด๋
ํ๋๋ก ์ฒ๋ฆฌํ์์ต๋๋ค. - ์์ธ ์ค๋ช ํ์ด์ง์ ๋ค์ด๊ฐ๋ฉด navbar์ ๋ฐฐ๊ฒฝ์๊ณผ ๊ธ์จ์์์ด ๋ณํฉ๋๋ค.
- ์คํฌ๋กค์ ๋ด๋ฆฌ๋ฉด ๋ค์ ์๋ navbar ์์์ผ๋ก ๋ณํฉ๋๋ค.
- ์ค๊ฑฐ๋ฆฌ๋ ๊ธ์ ๋จ์๊ฐ ์๋, ๋จ์ด ๋จ์๋ก ํ์ ๋ฐ๊ฟ์ ๊ฐ๋ ์ฑ์ ๋์์ต๋๋ค.
- ์ํ API์์ ์ ๊ณตํ๋ ๋ฐฐ๊ฒฝ ์ด๋ฏธ์ง๊ฐ ์์ ๊ฒฝ์ฐ, ๊ธฐ๋ณธ ์ด๋ฏธ์ง๋ฅผ ์ฌ์ฉํ๋๋ก ์ฒ๋ฆฌํ์์ต๋๋ค.
- ์ด์ ์์น์ ์๊ด์์ด ์ํ ์์ธ์ค๋ช
์ผ๋ก ์ด๋ํ๋ฉด ์๋์ผ๋ก
- ์ง๊ด์ ์ธ ๋ฆฌ๋ทฐ
- ๋๊ธ ์์ฑ์์๊ฒ๋ง ์์ , ์ญ์ ๋ฒํผ์ด ๋ณด์ด๋๋ก ์ฒ๋ฆฌํ์์ต๋๋ค.
- ๋ฆฌ๋ทฐ์ ๋จ๊ธด ํ์ ์ ์ค์๊ฐ์ผ๋ก ๊ณ์ฐํ์ฌ ๋ณ๋ก ํ์ํ์์ต๋๋ค.
- ๋ณ์ 0.1์ ๋จ์๋ก ์กฐ์ ํ์ฌ ์ง๊ด์ฑ์ ๋์์ต๋๋ค.
- ์ ํจ์ฑ ๊ฒ์ฌ
- ํ์์ด ์๋ ๋์๋ ๊ธฐ๋ณธ ํ๋ฉด์ ๋ณด์ฌ์ฃผ๊ณ , ์์ธ ํ์ด์ง๋ก ์ด๋ํ์ง ์๋๋ก ๋ง์์ต๋๋ค.
- 404 ํ์ด์ง
- ์ ํจํ์ง ์์ ํ์ด์ง๋ก ์ด๋ ์ 404ํ์ด์ง๋ฅผ ๋ ธ์ถํ๋๋ก ํ์์ต๋๋ค.
- nav ๋ฐ๊ฐ ์๋จ์ ์๊ธฐ ๋๋ฌธ์ ์ฌ์ฉ์๋ ์์ฐ์ค๋ฝ๊ฒ ํ์ผ๋ก ์ด๋ํ ์ ์๋๋ก ์ ๋ํ์์ต๋๋ค.
- ์ํ์งํฅ์์ํ api์์ ์ ๊ณตํ๋ ์ฃผ๊ฐ ๋ฐ์ค์คํผ์ค ์ํ์ ์ ๋ชฉ์ ์ฝ 3000๊ฐ ์ ๋ ์์ง
- ์์งํ ์ ๋ชฉ ๋ฐ์ดํฐ๋ฅผ ๋ฐํ์ผ๋ก python ํฌ๋กค๋ง ํ๋ก๊ทธ๋จ์ ์์ฑํ์ฌ, ๋ค์ด๋ฒ ์ํ ํ์ด์ง์์
๋ถ๊ฐ ์ ๋ณด
๊ฐ ์กด์ฌํ๋ ์ํ์tmdb
api์์ ์ ๊ณตํ๋ video key๊ฐ์ด ์กด์ฌํ๋ ์ํ๋ฅผ ๋์์ผ๋ก ์ฝ 300๊ฐ ์ ๋์ ๋ฐ์ดํฐ๋ฅผ ์์ง
-
์ํ์ profile vector ๊ณ์ฐ
-
์ํ์ ํน์ฑ์ ๋ํ๋ด๋ ์ ๋ณด๋ก ์ฅ๋ฅด, ํฅํ ์ ๋(popularity), ํ์ (actual_vote_average), ์ํ ์์์๊ฐ(running time), ๊ตญ๊ฐ, ๊ด๋๋ฑ๊ธ 6๊ฐ์ง๋ฅผ ์ ์
-
๊ฐ 6๊ฐ์ง๋ฅผ ์ฐจ์์ผ๋ก ๊ฐ์ง๋ 6์ฐจ์ ๋ฒกํฐ๋ก ๋ชจ๋ ์ํ ๋ฐ์ดํฐ์ profile vector๋ฅผ ๊ณ์ฐํ์ฌ ๋ฐ์ดํฐ๋ก ์ ์ฅ
-
๋ค์์ ๋ฐ์ดํฐ๋ฅผ ์ ์ฅํ ๋ ์ฌ์ฉํ ๊ธฐ์ค์ด๋ค.
์ ๋ณด ์ ์ฅ ๊ฐ ํน์ง ์ฅ๋ฅด 0~28 ๋ฒ์ฃผํ ํ์ ์ค์ ๊ฐ ์์ฒด ํฅํ์ ๋ 0, 1, 2, 3 ๋ก๊ทธ๋ณํ์ ์ํํ์ฌ ์ฌ๋ถ์์๋ฅผ ๊ธฐ์ค ๊ตญ๊ฐ 0, 1, 2, 3 ํ๊ตญ, ๋ฏธ๊ตญ, ์ผ๋ณธ, ๊ธฐํ ์์์๊ฐ 0, 1, 2, 3 ์ฌ๋ถ์์ ๊ด๋๋ฑ๊ธ 0,1,2,3,4,5 ์ ์ฒด ๊ด๋๊ฐ, 12์ธ ๊ด๋๊ฐ, 15์ธ ๊ด๋๊ฐ, ์ฒญ์๋ ๊ด๋ ๋ถ๊ฐ, ์ ํ์์๊ฐ, ๋ฑ๊ธ๋ณด๋ฅ -
์ํ์ profile์ ๋ถ๋ณํ๋ ๊ฐ์ด๋ฏ๋ก, ๋ฏธ๋ฆฌ ๊ณ์ฐํ์ฌ ๋ฐ์ดํฐ๋ก ์ ์ฅํ๋ฉด ํจ์จ์ ์ธ ์๊ณ ๋ฆฌ์ฆ์ ๊ธฐ๋ํ ์ ์๋ค.
-
-
user์ profile vector ๊ณ์ฐ
- ์ ์ ๊ฐ ๊ด์ฌ์์ดํ ์ํ๋ฅผ ๋์์ผ๋ก ์ ์ ํ ๊ฐ์ค์น๋ฅผ ๋ถ์ฌํ๊ณ , ์ํ profile vector์ ๊ฐ์คํ๊ท ์ ์ ์ ์ profile vector๋ผ๊ณ ์ ์ํ๊ณ , ์ด๊ฒ์ด ์ ์ ์ ์ข ํฉ์ ์ธ ์ทจํฅ์ ๋ํ๋ด๋ vector์ด๋ค.
- โ์ ์ ํ ๊ฐ์ค์นโ๋ ์ ์ ๊ฐ ์ฌ์ดํธ๋ฅผ ์ด์ฉํ๋ฉด์ ํน์ ์ํ์ ๋ํ ๊ด์ฌ์ ๋ณด์ด๋ ์ ๋๋ก ์ ์ํ๋ค.
- ์ฌ์ดํธ๋ฅผ ๊ฐ์ ํ์ฌ ์ด์ฉํ ์ต์ด์๋ ์ ์ ์ ์ทจํฅ์ ์ ์ ์์ผ๋ฏ๋ก, ๋๋ค์ผ๋ก ์ํ๋ฅผ ์ ์ํ๊ณ 1๊ฐ ์ด์์ ๊ด์ฌ์์ดํ ์ํ๋ฅผ ์ฒดํฌํ๋ค.
- ์ ์ ๊ฐ ์ฌ์ดํธ๋ฅผ ์ด์ฉํ๋ฉด์ ์ํ ์ด๋ฏธ์ง๋ฅผ ํด๋ฆญํ๋ฉด, ํด๋น ์ํ์ ์์ธ์ ๋ณด ํ์ด์ง๋ก ์ด๋ํ๋ฉฐ, ์ด๋ ๊ทธ ์ํ์ ๊ด์ฌ์ ๋ณด์ธ๋ค๋ ๋ป์ผ๋ก 1์ ์ ๋ถ์ฌ
- ์ํ์ ์์ธ์ ๋ณด ํ์ด์ง์์ ํ์ ๊ณผ ๋ฆฌ๋ทฐ๋ฅผ ์์ฑํ๋ฉด, ์ํ์ ๋์ฑ ๊ด์ฌ์์ดํ๋ค๋ ๋ป์ผ๋ก ์ ์ํ ํ์ ์ ๋ฐ๋ผ 1์ ์ด๋ 2์ ์ผ๋ก ์ฐจ๋ฑ ์ ์๋ฅผ ๋ถ์ฌ
- ์ ์ ๋ถ์ฌ๋ ์์ธ ์ ๋ณด ํ์ด์ง๋ก ๊ฐ๊ฑฐ๋, ๋ฆฌ๋ทฐ๋ฅผ ์์ฑํ๋ฉด ๋ฌดํํ ๊ฐ๋ฅํ๋ฐ, ๋ฌดํํ ์ ํ์ ์ผ๋ก ์ฆ๊ฐํ๋ ๊ฒ์ ๋ฐฉ์งํ๊ธฐ ์ํด ๊ทธ๋์ ์ป์ ์ ์์ ๋ก๊ทธ๋ณํ์ ์ฌ์ฉํ์ฌ ๊ฐ์ค์น๋ฅผ ๊ตฌํ๋ค.
-
์ ์ ์ profile๊ณผ ์ํ์ profile ์ฌ์ด cosine similarity๋ฅผ ๊ณ์ฐ
- ๋ vector์ ๊ฑฐ๋ฆฌ๊ฐ ์๋ก ๊ฐ๊น๋ค๋ ๊ฒ์ ๋ vector๊ฐ ๋ํ๋ด๋ ํน์ฑ์ด ์๋ก ๋น์ทํ๋ค๋ ๋ป
- ๋ vector์ ๊ฑฐ๋ฆฌ๋ฅผ ๋ํ๋ด๋ ์ ๋๋ก cosine similarity๋ฅผ ๊ณ์ฐํ๊ณ ์ด ๊ฐ์ด ํด์๋ก ๋ vector๊ฐ ์๋ก ๋น์ทํ๋ค๋ ๋ป์ด๋ค.
- ์ ์ ์ profile vector์ ์ํ์ profile vector์ cosine similarity๊ฐ ํฌ๋ค๋ ๋ป์, ๋ vector์ ํน์ฑ์ด ์๋ก ๋น์ทํ๋ค๋ ๋ป์ผ๋ก, ์ ์ ๊ฐ ํด๋น ์ํ์ ๊ด์ฌ์์ดํ ๊ฐ๋ฅ์ฑ์ด ํฌ๋ค๋ ๋ป์ด๋ค.
-
์์ง ๋ณด์ง ์์ ์ํ์ ๋ํ ์ถ์ฒ
- ๊ฐ์ง๊ณ ์๋ ๋ชจ๋ ์ํ์ ๋ํ์ฌ ํน์ ์ ์ ๊ฐ ๊ด์ฌ์์ดํ ์ ๋ ์ค ์ต์๊ฐ์ ๊ฐ์ง๋ ์ํ๋ฅผ ๋ชจ๋ ์ฐพ๋๋ค.
- ์ ์ ์ profile vector์ ๊ด์ฌ๋๊ฐ ์ต์๊ฐ์ธ ์ํ์ profile vector์ cosine similarity๋ฅผ ๊ตฌํ์ฌ ํฐ ๊ฐ์ ๊ฐ์ง๋ ์ํ ์์๋๋ก 10๊ฐ๋ฅผ ์ถ์ฒ
-
๊ฐ์ฅ ๋ง์ด ์ ํํ ์ฅ๋ฅด๋ฅผ ๊ฐ์ง๋ ์ํ ์ถ์ฒ
- ์ ์ ๊ฐ ์ฌ์ดํธ๋ฅผ ์ด์ฉํ๋ฉด์ ์์ธํ์ด์ง๋ ๋ฆฌ๋ทฐ๋ฅผ ์์ฑํ ์ํ์ ์ฅ๋ฅด ์ ๋ณด๋ฅผ ์์งํ๋ค.
- ๊ฐ์ฅ ๋ง์ด ์ ํํ ์ฅ๋ฅด์ ๋์ผํ ์ฅ๋ฅด๋ฅผ ๊ฐ์ง๋ ๋ชจ๋ ์ํ๋ฅผ ์ฐพ๋๋ค
- ์ ์ ์ profile๊ณผ ํด๋น ์ฅ๋ฅด์ ์ํ profile์ cosine similarity๋ฅผ ๊ตฌํ์ฌ ํฐ ๊ฐ์ ๊ฐ์ง๋ ์ํ ์์๋๋ก 10๊ฐ๋ฅผ ์ถ์ฒ
-
๊ฐ์ฅ ๊ด์ฌ์์ดํ ์ํ์ ๋น์ทํ ์ํ๋ฅผ ์ถ์ฒ
- ์ ์ ๊ฐ ์ฌ์ดํธ๋ฅผ ์ด์ฉํ๋ฉด์ ์์ธํ์ด์ง๋ ๋ฆฌ๋ทฐ๋ฅผ ์์ฑํ ์ํ์ค, ๊ฐ์ฅ ๊ด์ฌ์์ดํ ์ํ๋ฅผ ์ฐพ๋๋ค.
- ๊ฐ์ฅ ๊ด์ฌ์์ดํ ์ํ์ profile๊ณผ ๋๋จธ์ง ๋ชจ๋ ์ํ์ profile์ cosine similarity๋ฅผ ๊ตฌํ์ฌ ํฐ ๊ฐ์ ๊ฐ์ง๋ ์์๋๋ก 10๊ฐ๋ฅผ ์ถ์ฒ
-
์ํ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ
- ์ํ์ ์ ๋ชฉ์ด๋ ๋ฐฐ์ฐ๋ช ์ ์ ์ ๊ฐ ์ ๋ ฅํ ํค์๋๊ฐ ํฌํจ๋ ๋ชจ๋ ์ํ ๋ฐ์ดํฐ๋ฅผ ์ฐพ๋๋ค.
- ํด๋น ์ํ์ profile๊ณผ ์ ์ ์ profile์ cosine similarity๋ฅผ ๊ณ์ฐํ์ฌ, ํฐ ๊ฐ์ ๊ฐ์ง๋ ์์๋๋ก ๊ฒ์ ๊ฒฐ๊ณผ๋ฅผ ์ถ๋ ฅํด์ค๋ค.
๐ค ๋ํ
- ํ์์ ์ถ์ฒ ์์คํ ์ ๊ตฌํํด๋ณด๊ณ ์ถ๋ค๋ ์๊ฐ์ ํ์๋๋ฐ, ๊ฐ์ฅ ๊ธฐ๋ณธ์ ์ธ cosine similarity๋ฅผ ์ด์ฉํ ์๊ณ ๋ฆฌ์ฆ์ด์์ง๋ง ์ด๋ฒ ๊ธฐํ์ ๊ตฌํํ ์ ์์ด์ ์ข์์ต๋๋ค.
- ์ฝ๊ฒ ๋ชจ๋ ๊ฒ์ ๊ตฌํํ ์ ์์ ๊ฒ์ด๋ผ๊ณ ์๊ฐํ์ง๋ง, ์ง์ ํด๋ณด๋ ํ์์ ์๋ฌด ์๊ฐ์์ด ์ด์ฉํ๋ ์น์ฌ์ดํธ๋ค์ ๊ฐ๋ฐ์๋ค์ ์๋ง์ ๊ณ ๋ ค์ฌํญ๋ค์ด ์จ์ด์๋ค๋ ๊ฒ์ ๋๋ผ๊ฒ ๋์์ต๋๋ค. ์๋ฅผ ๋ค์ด ํ์์ ๋ณด ์์ ์ด๋ ํํด์ ๋น๋ฐ๋ฒํธ ์ธ์ฆํ๋ ๊ฒ์ ์ฌ์ฉ์๋ค์๊ฒ๋ ๊ธฐ๋ณธ์ธ๋ฐ, ๊ฐ๋ฐ์ ์ ์ฅ์์ ๊ท์ฐฎ์์ ๊ตฌํ ํ๊ธฐ ์ซ์๋ ๊ธฐ์ต์ด ๋ฉ๋๋ค.
- ๋ฒ๊ทธ ๊ณ ์น๊ธฐ๊ฐ ์ฝ์ง ์๋ค๋ ๊ฒ์ ๋๊ผ์ต๋๋ค. ์ฝ๊ฒ ์ด๋ค ๋ถ๋ถ์ ๊ณ ์น๋๋ผ๋ ๋ค๋ฅธ ๋ถ๋ถ์์ ๋ฌธ์ ์๊ธธ์ง๋ ๋ชจ๋ฅด๋ ๊ฐ๋ฐ์๋ค์ ๊ณ ์ถฉ์ ์กฐ๊ธ์ด๋๋ง ๋๋ ์ ์์์ต๋๋ค.
- ๊ธฐํ๊ณผ ์ํต์ ์ค์์ฑ์ ๋๋ ์ ์์์ต๋๋ค. ์ถฉ๋ถํ ๊ธฐํํ๊ณ ํ์๊ณผ ์ ์ํตํด์ ๊ทธ๋๋ง ํฐ ๋ฌธ์ ์์ด ์ํ๋ ๋ฐ๋ฅผ ์ ๊ตฌํํ ๊ฒ ๊ฐ์์ต๋๋ค
- ํ์์ ๊ฐ์ด ํ๋๊ณ ์ถ์๋ ๋ง์์ 1์์ ์น๊ตฌ์ ํ์ ์ด๋ฃจ์ด ํ๋ก์ ํธ๋ฅผ ํ ์ ์์ด์ ์ข์์ต๋๋ค. ์์์ ๋๋ฌด ๊ณ ์์ํจ ๊ฒ ๊ฐ์์ ๋ฏธ์ํดโฆ. ์ํด์ค์ ๋๋ฌด ๊ณ ๋ง์.. ํ๋ฆผ์.. ๊ฐ์ด ํ๋ก์ ํธ ํด์ ๋๋ฌด ์ฌ๋ฐ์์ด. ๋ค์์๋ ๊ฐ์ด ํ ์ ์์์ผ๋ฉด ์ข๊ฒ ๋ค
๐ถ ํ๋ฆผ
- ํ๋ก์ ํธ ์ ์ 1์ธ๋ถ๋ง ํด๋ด์! ํ๊ณ ๋ค์งํ๋๋ฐ 1์ธ๋ถ์ ํ ๊ฒ ๊ฐ์์ ๋งค์ฐ ๋ฟ๋ฏํฉ๋๋ค.
- ์ฒ์ randomํ ์ํ๋ฅผ ๋ณด์ฌ์ฃผ๊ณ , ์ฌ์ฉ์๊ฐ ํด๋ฆญํ movie data๋ฅผ ๋ฐ์ DB์ ์ ์ฅ ์ฑ๊ณตํ๋ ๋ ์ด ๊ฐ์ฅ ๊ธฐ์ต์ ๋ฉ๋๋ค. (๋ํ๋์ ์ด์ ์ผ์ฌ์ฒ๋ฆฌ๋ผ๊ณ ํ์ง๋ง ๊ทธ ํ๋ก ์๋ง์ ์๋ฌ๋ฅผ ๋ง๋ฌ๋ค. ๐)
- ํ๋ก์ ํธ๋ฅผ ํ๋ฉฐ ์ ๋ง ๋ง์ ๊ฑธ ๋ฐฐ์ ๋๋ฐ ์ง๊ธ ๊ธฐ์ต๋๋ ๊ฑด ์ด๋ฏธ์ง, ๋์์ ๋น์จ์ ์ ์งํ๋ฉด์ ํฌ๊ธฐ๋ฅผ ์ค์ด๋ CSS ์ค๋ ์ด์ฌํ ๋ง๋ model serailizer์ ๋ค๋ฅธ ํ๋ ์ถ๊ฐํ๊ธฐ. ๊ทธ๋ฆฌ๊ณ django์์ ์ฒ์ ๋ง๋ JSON Field ์ ๋. ์, vue์์๋ ์๋ก๊ณ ์นจํ๋ฉด ์ ๋ณด๊ฐ ๋ค ๋ ๋ผ๊ฐ์ ๊ผญ vuex๋ก ๋ณด๋ด์ผ ํ๋ค๋ ๊ฒ๋.
- ์ ๊ฒฝ์ฐ์ง ์์ผ๋ฉด ๋ชจ๋ฅผํ ์ง๋ง, CSS ๋ํ ์ผ์ ์ ๊ฒฝ์ ๋ง์ด ์ผ๋ค. ๋ฐ์ํ web๊ตฌํ์ ์ํด์ ๊ณ์ ํ๋ฉดํฌ๊ธฐ๋ฅผ ๋ฐ๊ฟ๊ฐ๋ฉฐ ํ์ธํ๋ค. ํนํ navbar ๊ฐ์ ๊ณณ์ ๋ํ ์ผ์ ๋ด์ผ๋ ค๊ณ ๋ ธ๋ ฅํ๋ค. ๐
- ๋ํ๋๊ป ์ง์ฆ์ ๋๋ฌด ๋ง์ด ๋ด์ ์ฃ์กํ๋ค. ์์์ ์๋ง์ ์นญ์ฐฌ์ผ๋ก ๋๋ฅผ ํ๋๊ฒ ํ, ์ต๊ณ ์ ํํธ๋ ๐
- Special Thanks To : ๐น