728x90
๋ฐ˜์‘ํ˜•
[Django] ์‚ฌ์šฉ์ž์—๊ฒŒ ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ • ๋ฉ”์ผ ๋ณด๋‚ด๊ธฐ (send password reset link)

[ ์ธํŠธ๋กœ ] ์˜ค๋Š˜ ์˜คํ›„ 3์‹œ์ฏค ์• ํ”Œ ์ชฝ์œผ๋กœ ๊ฐœ๋ฐœ์ž๋‹˜ ๋ฉ”์ผ์ฃผ์†Œ๋ฅผ ๊ณต์œ ๋ฐ›์•˜๋‹ค๋ฉด์„œ ๋น„๋ฐ€๋ฒˆํ˜ธ ์ดˆ๊ธฐํ™”๋ฅผ ํ•˜๊ณ  ์‹ถ๋‹ค๋Š” ๋ฉ”์ผ์„ ๋ฐ›์•˜๋‹ค. (๋น„๋ฐ€๋ฒˆํ˜ธ๋ฅผ ์žŠ์œผ์…”์„œ ๋‹ค์‹œ ๋กœ๊ทธ์ธ์„ ๋ชปํ•˜๋Š” ์ƒํ™ฉ์ด์…จ๋‹ค) ๊ฐœ์ธ ์•ฑ์ด์ง€๋งŒ ์•ฑ์— ๋ฌธ์˜ํ•  ์ˆ˜ ์žˆ๋Š” ์ด๋ฉ”์ผ๋„ ์•ˆ๋‚จ๊ฒจ๋†“๊ณ  ๊ณ„์ •์ด ์žˆ๋Š” ์•ฑ์ด๋ผ๋ฉด ํ•„์ˆ˜์ธ ์•„์ด๋”” ์ฐพ๊ธฐ, ๋น„๋ฐ€๋ฒˆํ˜ธ ์žฌ์„ค์ •, ํƒˆํ‡ดํ•˜๊ธฐ๋„ ์•ˆ๋ถ™์ธ ๋‚ด ์ž์‹ ์ด ๋„ˆ๋ฌด ๋ถ€๋„๋Ÿฝ๊ณ  ์ฃ„์†ก์Šค๋Ÿฌ์› ๋‹ค,,, ์–‘ํŒŒ๊ฐ€์กฑ์„ ๋„ˆ๋ฌด๋„ˆ๋ฌด ์ž˜์“ฐ๊ณ  ์žˆ๊ณ  ์–ผ๋ฅธ ๋‹ค์‹œ ์žฌ๊ฐœํ•˜๊ณ  ์‹ถ๋‹ค๋Š” ๋ฉ”์ผ์„ ๋ณด๊ณ  ์ €๋…์•ฝ์† ์ „ ๋ฌด์กฐ๊ฑด ๋Œ€์‘ํ•ด๋“œ๋ฆฌ๊ณ  ๊ฐ„๋‹ค ๐Ÿ”ฅ๐Ÿ”ฅ ๋ผ๊ณ  ์ƒ๊ฐํ•˜๊ณ  ๊ฐ€์žฅ ๋น ๋ฅธ ๋ฐฉ๋ฒ•์œผ๋กœ ๋Œ€์‘ํ•ด๋“œ๋ ธ๊ณ  ๊ธฐ๋ก์„ ๋‚จ๊ธด๋‹ค. (์ด๋ ‡๊ฒŒ ์ฃผ์ ˆ์ฃผ์ ˆ ์“ฐ๋Š” ์ด์œ ๋Š” Django์˜ ๊ธฐ๋ณธ ๊ธฐ๋Šฅ์ด ๋„ˆ๋ฌด ์ž˜๋˜์–ด์žˆ๊ณ  ๊ฐ„ํŽธํ•ด์„œ ์ด๋Ÿฐ ๊ธ‰ํ•œ ์ƒํ™ฉ์—์„œ๋„ ๋นจ๋ฆฌ ์ ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ๊ฒƒ์„ ๊ฐ•์กฐํ•˜๊ณ  ์‹ถ์–ด์„œ์ด๋‹ค,,,) (์‚ฌ์‹ค ์ฒ˜์Œ๋ถ€ํ„ฐ ์ด..

๐Ÿ/Django 2021. 3. 1. 01:31
[Django] ์žฅ๊ณ , Heroku์˜ ๊ธฐ๋ณธ DB ์„ค์ • ์‚ดํŽด๋ณด๊ธฐ

[1] ์žฅ๊ณ ์˜ ๊ธฐ๋ณธ DB ์„ค์ • ์•„๋ž˜ ๋ช…๋ น์–ด๋กœ ์žฅ๊ณ  ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค๋ฉด django-admin startproject sample_api ์ด๋ ‡๊ฒŒ ํŒŒ์ผ์ด ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค. settings.py์— ๋“ค์–ด๊ฐ€๋ณด๋ฉด ์žฅ๊ณ ๋Š” ๊ธฐ๋ณธ DB๋กœ sqlite๋ฅผ ์“ฐ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. SQLite๋Š” ์ฃผ๋กœ ์†Œ๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์—์„œ ์‚ฌ์šฉ๋˜๋Š” ํŒŒ์ผ๊ธฐ๋ฐ˜์˜ ๊ฐ€๋ฒผ์šด ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์ž…๋‹ˆ๋‹ค. ๋ณดํ†ต ์ดˆ๊ธฐ ๊ฐœ๋ฐœ ๋‹จ๊ณ„์—์„œ SQLite๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋น ๋ฅด๊ฒŒ ๊ฐœ๋ฐœํ•˜๊ณ  ์„œ๋น„์Šค๋กœ ์ œ๊ณตํ•  ๋•Œ ์šด์˜ํ™˜๊ฒฝ์— ์–ด์šธ๋ฆฌ๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋กœ ๋ฐ”๊พผ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋Œ€๊ทœ๋ชจ ์„œ๋น„์Šค์—๋Š” ์˜ค๋ผํด / ์†Œ๊ทœ๋ชจ ์„œ๋น„์Šค๋Š” PostgreSQL, MySQL ๋“ฑ์˜ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ๋งŽ์ด ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ฆฌ๊ณ  ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋ฅผ ์—ฌ๋Ÿฌ ๊ฐœ ์‚ฌ์šฉํ•  ๋•Œ default์— ์ง€์ •ํ•œ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์™ธ์—๋„ ์ถ”๊ฐ€๋กœ ๋“ฑ๋กํ•ด์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค๊ณ ..

๐Ÿ/Django 2021. 1. 13. 01:31
[Heroku] Scheduler๋ฅผ ์ด์šฉํ•ด์„œ ๋ฐ˜๋ณต ์ž‘์—… ๋Œ๋ฆฌ๊ธฐ

[1] heroku์˜ Add On ํ—ค๋กœ์ฟ ์—์„œ๋Š” ์•ฑ์—์„œ ์‚ฌ์šฉํ•˜๊ณ  ์‹ถ์€ ์ถ”๊ฐ€ ๊ธฐ๋Šฅ์„ add-on ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. Add-on elements (elements.heroku.com/addons) ์—์„œ ๊ฒ€์ƒ‰ํ•ด์„œ ์›ํ•˜๋Š” ๊ธฐ๋Šฅ์„ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. ๋‚˜์˜ ์•ฑ > Resources > Add-ons ์— ๋“ค์–ด๊ฐ€์„œ ์ถ”๊ฐ€ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค. [2] Add On์—์„œ Scheduler ๊ฒ€์ƒ‰ ์ €๋Š” ํŠน์ • ์ž‘์—…์„ ๋งค์ผ๋งˆ๋‹ค ๋ฐ˜๋ณตํ•ด์ฃผ๋Š” ๊ธฐ๋Šฅ์ด ํ•„์š”ํ•ด์„œ Scheduler๋ผ๊ณ  ๊ฒ€์ƒ‰์„ ํ–ˆ์–ด์š” ์ €๋Š” ์ด์ค‘์— ๊พธ์ค€ํžˆ ๋ฌด๋ฃŒ๋กœ ์“ธ ์ˆ˜ ์žˆ๋Š” Heroku Scheduler๋ฅผ ์„ ํƒํ•ด์คฌ์Šต๋‹ˆ๋‹ค. (๋‹ค๋ฅธ ๊ฒƒ์€ ์œ ๋ฃŒ๊ฑฐ๋‚˜ trial๋งŒ ๋ฌด๋ฃŒ๋”๋ผ๊ตฌ์š”..) ํ•˜์ง€๋งŒ ๋ฌด๋ฃŒ์—ฌ๋„ Install ๋ˆ„๋ฅด๋ฉด ํฌ๋ ˆ๋”ง ์นด๋“œ๋ฅผ ๋“ฑ๋กํ•ด์•ผํ•œ๋‹ค๊ณ  ๋‚˜์˜ต๋‹ˆ๋‹ค. dashboard.heroku.com/acc..

๐Ÿ/Django 2020. 11. 2. 23:02
[Django] FCM ์„œ๋ฒ„๋ฅผ ํ†ตํ•ด ์•ฑ์— ํ‘ธ์‰ฌ๋ณด๋‚ด๊ธฐ

[Flutter] Firebase Cloud Messaging ์—ฐ๋™ + ํŒŒ๋ฒ  ์ฝ˜์†”์—์„œ ํ‘ธ์‰ฌ๋ณด๋‚ด๊ธฐ ์—์„œ ํ‘ธ์‰ฌ๋ฅผ ๋ฐ›๋Š” ํด๋ผ์ด์–ธํŠธ(iOS, ์•ˆ๋“œ๋กœ์ด๋“œ) ์ชฝ ์„ค์ •์„ ํ•ด์คฌ๋Š”๋ฐ์š” ์ด์ œ ํ‘ธ์‰ฌ๋ฅผ ๋ณด๋‚ด๋Š” ์„œ๋ฒ„์ชฝ ์ž‘์—…์„ ํ•ด์ฃผ๊ฒ ์Šต๋‹ˆ๋‹ค. ๋ฌธ์„œ ์ค‘ ์„œ๋ฒ„ํ™˜๊ฒฝ ์ชฝ ๋ณด๋ฉด ๋ฉ๋‹ˆ๋‹ค. [1] Firebase ํด๋ผ์šฐ๋“œ ๋ฉ”์‹œ์ง•์˜ ์„œ๋ฒ„ ๊ตฌ์„ฑ์š”์†Œ ์šฐ์„  Firebase ํด๋ผ์šฐ๋“œ ๋ฉ”์‹œ์ง•์˜ ์„œ๋ฒ„ ์ธก ๊ตฌ์„ฑ์š”์†Œ๋Š” 2๊ฐ€์ง€์ž…๋‹ˆ๋‹ค. Google์—์„œ ์ œ๊ณตํ•˜๋Š” FCM ๋ฐฑ์—”๋“œ ์„œ๋ฒ„ ๋กœ์ง์ด ์‹คํ–‰๋˜๋Š” ์•ฑ ์„œ๋ฒ„ ์ €์˜ ์•ฑ ์„œ๋ฒ„๊ฐ€ FCM ๋ฐฑ์—”๋“œ์— ๋ฉ”์‹œ์ง€ ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด FCM ๋ฐฑ์—”๋“œ๋Š” ์‚ฌ์šฉ์ž ๊ธฐ๊ธฐ์—์„œ ์‹คํ–‰๋˜๋Š” ํด๋ผ์ด์–ธํŠธ ์•ฑ์— ๋ฉ”์‹œ์ง€๋ฅผ ๋ณด๋‚ด๋Š” ํ”Œ๋กœ์šฐ์ž…๋‹ˆ๋‹ค. [2] ๋‚˜์˜ ์„œ๋ฒ„๊ฐ€ FCM ์„œ๋ฒ„๋ž‘ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ• FCM ์„œ๋ฒ„๋ž‘ ์ƒํ˜ธ์ž‘์šฉํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ์—ฌ๋Ÿฌ๊ฐ€์ง€๊ฐ€ ์žˆ๋Š”๋ฐ์š”, ์ €๋Š” ๋ฌธ์„œ์—์„œ..

๐Ÿ/Django 2020. 10. 24. 17:06
[Django] ํŠœํ† ๋ฆฌ์–ผ part 6 - ์ •์  ํŒŒ์ผ

์ฒซ ๋ฒˆ์งธ ์žฅ๊ณ  ์•ฑ ์ž‘์„ฑํ•˜๊ธฐ, part 6 ๋”ฐ๋ผํ•ด๋ณธ ๊ฒƒ์„ ๊ธฐ๋ก ๐Ÿ‹๏ธโ€โ™€๏ธ ๊ทธ๋™์•ˆ ๋งŒ๋“  Poll์•ฑ์— stylesheet์™€ image๋ฅผ ์ถ”๊ฐ€ํ•ด๋ณผ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์ •์  ํŒŒ์ผ์ด๋ž€ web application์„ ๋งŒ๋“ค๋•Œ, ์„œ๋ฒ„์—์„œ ์ƒ์„ฑ๋œ HTML์„ ์ œ์™ธํ•˜๊ณ  ์ „์ฒด ์›น ํŽ˜์ด์ง€๋ฅผ ๋ Œ๋”๋งํ•˜๋Š” ๋ฐ ํ•„์š”ํ•œ ์ถ”๊ฐ€์ ์ธ ํŒŒ์ผ๋“ค์„ ์ œ๊ณตํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ด๋ฏธ์ง€, JavaScript, CSS๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ์žฅ๊ณ ์—์„œ๋Š” ์ด๋Ÿฐ ํŒŒ์ผ๋“ค์„ "์ •์  ํŒŒ์ผ" ์ด๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ž‘์€ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ์›น ์„œ๋ฒ„๊ฐ€ ์ •์  ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์žˆ๋Š” ๊ณณ์— ๋ณด๊ด€ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ํฐ ๋ฌธ์ œ๊ฐ€ ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿฌ๋‚˜ ๋Œ€๊ทœ๋ชจ ํ”„๋กœ์ ํŠธ์—์„œ๋Š” ํŠนํžˆ ๊ฐ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด ์ œ๊ณตํ•˜๋Š” ์—ฌ๋Ÿฌ ์ •์  ํŒŒ์ผ ์„ธํŠธ๋ฅผ ์ฒ˜๋ฆฌํ•˜๋Š” ์—ฌ๋Ÿฌ ์•ฑ์œผ๋กœ ๊ตฌ์„ฑ๋œ ํ”„๋กœ์ ํŠธ๋ผ๋ฉด, ๊นŒ๋‹ค๋กœ์›Œ์ง€๊ธฐ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ djang..

๐Ÿ/Django 2020. 2. 29. 22:07
[Django] ํŠœํ† ๋ฆฌ์–ผ part 5 (2) - ๋ทฐ ํ…Œ์ŠคํŠธ ์ž‘์„ฑํ•˜๊ธฐ

Question์˜ pub_date๊ฐ€ ๋ฏธ๋ž˜๋กœ ์„ค์ •๋˜์–ด์žˆ๋‹ค๋ฉด, ๋ฏธ๋ž˜์˜ ๊ทธ ์‹œ๊ธฐ๊ฐ€ ๋˜๋ฉด ํ•ด๋‹น ์งˆ๋ฌธ์ด ๊ฒŒ์‹œ๋˜์ง€๋งŒ ๊ทธ ์ „ ๊นŒ์ง€๋Š” ์งˆ๋ฌธ์ด ๋ณด์ด์ง€ ์•Š์•„์•ผํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ํ˜„์žฌ poll ์•ฑ์€ pub_dateํ•„๋“œ๊ฐ€ ๋ฏธ๋ž˜์ธ ์งˆ๋ฌธ๊นŒ์ง€๋„ ํฌํ•จํ•˜์—ฌ ๊ฒŒ์‹œํ•ฉ๋‹ˆ๋‹ค. ์ด๊ฒƒ์„ ๋ทฐ ํ…Œ์ŠคํŠธ์™€ ํ•จ๊ป˜ ๊ฐœ์„ ํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ ๋ฐ ํด๋ผ์ด์–ธํŠธ ์„ธํŒ… Django๋Š” ๋ทฐ ๋ ˆ๋ฒจ์—์„œ ์ฝ”๋“œ์™€ ์ƒํ˜ธ ์ž‘์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์‹œ๋ฎฌ๋ ˆ์ดํŠธํ•˜๊ธฐ์œ„ํ•ด ํ…Œ์ŠคํŠธ ํด๋ผ์ด์–ธํŠธ ํด๋ž˜์Šค Client๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ์ด ํ…Œ์ŠคํŠธ ํด๋ผ์ด์–ธํŠธ๋ฅผ tests.py๋˜๋Š” shell์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์šฐ์„  Shell์—์„œ ๋จผ์ € ์‚ฌ์šฉํ•ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์•„๋ž˜ ์ฝ”๋“œ๋กœ Shell์„ ์—ด๊ณ  Shell์—์„œ ํ…Œ์ŠคํŠธ ํ™˜๊ฒฝ์„ setup ํ•ด์ฃผ์„ธ์š”. django.test.utils ๋ฌธ์„œ๋ฅผ ๋ณด๋ฉด testํ™˜๊ฒฝ์„ setup, ..

๐Ÿ/Django 2020. 2. 22. 18:28
๊ณต์ง€์‚ฌํ•ญ
Total
256,708
Today
804
Yesterday
971
๋งํฌ
«   2021/06   »
์ผ ์›” ํ™” ์ˆ˜ ๋ชฉ ๊ธˆ ํ† 
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30      
๊ธ€ ๋ณด๊ด€ํ•จ