๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ

๐Ÿ‘ฉ๐Ÿป‍๐Ÿ’ป Programming

(18)
[mac-m1] install ์—๋Ÿฌ(Error: Cannot install under Rosetta 2) โ–ช๏ธsolution code # error brew install yarn # solution arch -arm64 brew install yarn โ–ช๏ธerror message Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)! ์˜ค๋ฅ˜: ARM ๊ธฐ๋ณธ ์ ‘๋‘์‚ฌ(/opt/homebrew)์˜ Rosetta 2 ์•„๋ž˜์— ์„ค์น˜ํ•  ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค! m1์นฉ์œผ๋กœ ์‚ฌ๊ณ ๋‚˜์„œ ์ข…์ข… ์ด๋Ÿฌํ•œ ์—๋Ÿฌ๋ฅผ ๋งˆ์ฃผ์ณค๋‹ค. arch -arm64 ๋ช…๋ น์–ด๋งŒ ์•ž์— ์ถ”๊ฐ€ํ•ด์ฃผ๋ฉด ์„ค์น˜๊ฐ€ ๋ฐ”๋กœ ๋˜๋ฒ„๋ฆฐ๋‹ค. ๐Ÿ‘ ๊ฒฝ๋กœ์ฐจ์ด์ธ ๊ฒƒ ๊ฐ™์€๋ฐ, ์—๋Ÿฌ ๋ฉ”์„ธ์ง€์—๋„ ์นœ์ ˆํ•˜๊ฒŒ ๋ง์„ ํ•ด์ค˜์„œ ๋„ˆ๋ฌด ์ข‹๋‹ค.
[React] mac ๊ฐœ๋ฐœํ™˜๊ฒฝ ์„ธํŒ… : node.js, npm ์„ค์น˜ โ–ช๏ธNode.js๋ž€ ๊ณต์‹ ํ™ˆํŽ˜์ด์ง€๋ฅผ ๋ณด๋ฉด "Node.js®๋Š” Chrome V8 JavaScript ์—”์ง„์œผ๋กœ ๋นŒ๋“œ๋œ JavaScript ๋Ÿฐํƒ€์ž„์ž…๋‹ˆ๋‹ค."๋ผ๊ณ  ์ •์˜ํ•˜๊ณ  ์žˆ๋‹ค. * ๋Ÿฐํƒ€์ž„์€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๊ฐ€ ๊ตฌ๋™๋˜๋Š” ํ™˜๊ฒฝ์„ ๋งํ•จ ์ฝ”๋“œ์ž‡ ๊ฐ•์˜๋ฅผ ๋“ค์€ ๋‚ด์šฉ์„ ์ธ์šฉํ•˜์—ฌ ์‰ฝ๊ฒŒ ์„ค๋ช…ํ•˜๋ฉด, ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ๋Š” ๋ธŒ๋ผ์šฐ์ € ๋‚ด์—์„œ๋งŒ ์‹คํ–‰์ด ๊ฐ€๋Šฅํ•œ๋ฐ ๋ธŒ๋ผ์šฐ์ € ๋ฐ–์—์„œ๋„ ์ž๋ฐ” ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‹คํ–‰๊ฐ€๋Šฅํ•˜๊ฒŒ ๋„์™€์ฃผ๋Š” ๊ฒƒ์ด ๋ฐ”๋กœ Node.js ์ด๋‹ค! ํ”„๋ก ํŠธ์—”๋“œ์—์„œ๋Š” ๋ณด์กฐ์ ์œผ๋กœ ์‚ฌ์šฉํ•œ๋‹ค๊ณ  ํ•˜๋ฉฐ, ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์ถ”ํ›„ ํ•™์Šตํ•ด์•ผ๊ฒ ๋‹ค. ์ฐธ๊ณ ๋กœ npm์€ Node Package Manager์˜ ์•ฝ์ž๋กœ, ๋ง ๊ทธ๋Œ€๋กœ node js์—์„œ ์‹คํ–‰ํ•  ํŒจํ‚ค์ง€๋ฅผ ๊ด€๋ฆฌํ•˜๊ณ  ์‹คํ–‰ํ•˜๋Š” ๋„๊ตฌ์ด๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์œ„ํ‚ค๋ฐฑ๊ณผ Node.js ์ฐธ๊ณ . โ–ช๏ธNode.js ์„ค์น˜ ๋‚˜๋Š” ์•ˆ์ •์„ฑ๊ณผ..
[Django] ์œ ์ €์‹œ์Šคํ…œ : ๋””์žฅ๊ณ  ํ”„๋กœ์ ํŠธ ์‹œ์ž‘์„ ์œ„ํ•œ pre setting ๋‹จ๊ณ„๋ณ„ ์ •๋ฆฌ ๐Ÿ” ๋””์žฅ๊ณ ์— ๋Œ€ํ•œ ๊ธฐ์ดˆ์ ์ธ ๋‚ด์šฉ์€ ๋‹ค๋ฅธ ํฌ์ŠคํŒ…์„ ์ฐธ๊ณ !(๊ธ€ ์ œ์ผ ํ•˜๋‹จ์— ์ •๋ฆฌํ•ด๋‘์—ˆ์Šต๋‹ˆ๋‹ค) django.contrib.auth, django-allauth์— ๋Œ€ํ•œ ๋‚ด์šฉ์€ ์ถ”ํ›„ ํฌ์ŠคํŒ… ์˜ˆ์ • :) 1๏ธโƒฃ์‚ฌ์ „ ์ค€๋น„ 1. ํด๋” ๋งŒ๋“ค๊ธฐ mkdir {ํด๋” ์ด๋ฆ„} example) mkdir django-coplate ๋””์žฅ๊ณ  ํ”„๋กœ์ ํŠธ๋ฅผ ๋งŒ๋“ค ๊ณต๊ฐ„ 2. ๊ฐ€์ƒํ™˜๊ฒฝ ๋งŒ๋“ค๊ธฐ pyenv virtualenv {ํŒŒ์ด์ฌ ๋ฒ„์ „} {๊ฐ€์ƒํ™˜๊ฒฝ ์ด๋ฆ„} example) pyenv virtualenv 3.9.10 django_coplate_env ์ƒ์„ฑ ํ›„ ์„ค์น˜๋œ python ๋ฒ„์ „ ๋ฐ ํ™˜๊ฒฝ ํ™•์ธ : pyenv versions 3. ๊ฐ€์ƒํ™˜๊ฒฝ ์ง€์ • 1์—์„œ ๋งŒ๋“ค์–ด์ค€ ํด๋”๋กœ ์ด๋™ ํ›„ ๋ช…๋ น์–ด ์ž…๋ ฅ pyenv local {๊ฐ€์ƒํ™˜๊ฒฝ ์ด๋ฆ„} pyenv loc..
[Error] Django django.db.utils.OperationalError: no such table: ๊ฒฐ๋ก ๋ถ€ํ„ฐ ๋งํ•˜๋ฉด ๋ฉ”์„ธ์ง€ ๋งˆ์ง€๋ง‰์— ํ…Œ์ด๋ธ”์ด ์—†๋‹ค. ์ฆ‰, ์žฅ๊ณ ์˜ sqlite DB์— ํ•ด๋‹น ํ…Œ์ด๋ธ”์ด ์—†์–ด์„œ ๋ฐœ์ƒํ•œ ์—๋Ÿฌ์ด๋‹ค. ํ•ด๊ฒฐ ๋ฐฉ๋ฒ•์€ ๋งค์šฐ ๊ฐ„๋‹จํ•˜๋‹ค. ์•„์ฃผ ๊ฐ„๋‹จํ•œ ์—๋Ÿฌ์ด๋‚˜ ์ฒ˜์Œ ์žฅ๊ณ ๋ฅผ ์ ‘ํ•  ๋•Œ๋Š” ๋‹นํ™ฉ์Šค๋Ÿฌ์šธ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ์ด๋ผ ๊ธฐ๋กํ•˜์˜€๋‹ค. โ“Error Message # ์ž‘์„ฑํ•œ ์ฝ”๋“œ python manage.py shell (InteractiveConsole) >>> from menus.models import Menu >>> Menu.objects.all() # ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ Traceback (most recent call last): ... django.db.utils.OperationalError: no such table: menus_menu โ—๏ธsolution code python manage.py m..
[Error] Django makemigrations : DB new column ์ถ”๊ฐ€ ํ›„ ๋ฐ˜์˜ Django์—์„œ ์ตœ์ดˆ์— makemigrations์„ ํ•œ ํ›„, ์ƒˆ ์ปฌ๋Ÿผ์„ ์ถ”๊ฐ€ํ•˜๊ณ  ๋‹ค์‹œ makemigrations์„ ์‹œ๋„ํ•˜๋ฉด์„œ ์ƒ๊ธด ์—๋Ÿฌ์ด๋‹ค. โ“Error Message >> python manage.py makemigrations You are trying to add a non-nullable field 'name_eng' to menu without a default; we can't do that (the database needs something to populate existing rows). Please select a fix: 1) Provide a one-off default now (will be set on all existing rows with a null value for thi..
[Django] Project์™€ App ๊ตฌ์กฐ & Reusable App ๐Ÿ” Django ์›น ๊ฐœ๋ฐœ์€ ์œ ์ €์—๊ฒŒ ๋ณด์—ฌ์ง€๋Š” ๋ถ€๋ถ„์ธ ํ”„๋ก ํŠธ์—”๋“œ์™€ ๋ฐ์ดํ„ฐ์™€ ๋กœ์ง์„ ๋‹ด๋‹นํ•˜๋Š” ๋ฐฑ์—”๋“œ๊ฐ€ ์žˆ์œผ๋ฉฐ, Django๋Š” ๋ชจ๋‘ ๊ฐœ๋ฐœ์ด ๊ฐ€๋Šฅํ•œ ํ’€์Šคํƒ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ๋งํ•จ ๐Ÿ“ Project vs App Project : ์›น ์„œ๋น„์Šค ์ „์ฒด App : ๊ธฐ๋Šฅ์„ ๋‚˜ํƒ€๋‚ด๋Š” ๋‹จ์œ„ (example: ํšŒ์›๊ฐ€์ž…, ์žฅ๋ฐ”๊ตฌ๋‹ˆ๋‹ด๊ธฐ, ๊ตฌ๋งคํ•˜๊ธฐ ๋“ฑ) โ–ช๏ธProject ๊ตฌ์กฐ ์žฅ๊ณ ์—์„œ ํ”„๋กœ์ ํŠธ๋Š” ์›น์‚ฌ์ดํŠธ๋ฅผ ๋งํ•จ 1. Project Root ์ตœ์ƒ์œ„ ๋””๋ ‰ํ† ๋ฆฌ์ธ ํ”„๋กœ์ ํŠธ ๋ช… ๋””๋ ‰ํ† ๋ฆฌ ํ”„๋กœ์ ํŠธ์˜ ์ „์ฒด ํŒŒ์ผ์ด ๋“ค์–ด ์žˆ๋Š” ๋””๋ ‰ํ† ๋ฆฌ 2. manage.py ํ•˜๋‚˜์˜ Django ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑํ•˜๋ฉด ์ž๋™์œผ๋กœ ๋งŒ๋“ค์–ด์ง€๋Š” ํ”„๋กœ์ ํŠธ ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ ๋ช…๋ น ์œ ํ‹ธ๋ฆฌํ‹ฐ Django ์•ฑ ์ƒ์„ฑ, ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ด€๋ จ ๊ธฐ๋Šฅ์„ ์ˆ˜ํ–‰, ๊ฐœ๋ฐœ ์„œ๋ฒ„๋ฅผ ์‹คํ–‰ ๋“ฑ์˜ ์ž„๋ฌด์ˆ˜ํ–‰ ํ”„๋กœ์ ํŠธ๋ฅผ ์ƒ์„ฑ..
[Django & ๊ฐ€์ƒํ™˜๊ฒฝ] pyenv ๋ช…๋ น์–ด ๋ชจ์Œ ๋ฐ ๊ฐœ๋… ์ •๋ฆฌ โ–ช๏ธpython tool 1. pyenv ํŒŒ์ด์ฌ ๋ฒ„์ „ ๊ด€๋ฆฌ ํˆด ํ•˜๋‚˜์˜ ์ปดํ“จํ„ฐ์— ๋‹ค์–‘ํ•œ ํŒŒ์ด์ฌ ๋ฒ„์ „ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ pyenv git hub documentation 2. pyenv-vitrualenv ํŒŒ์ด์ฌ ํ™˜๊ฒฝ์„ ๊ฒฉ๋ฆฌํ•˜๋Š” ํˆด์ธ virtualenv์˜ pyenv ํ”Œ๋Ÿฌ๊ทธ์ธ pyenv-vitrualenv git hub documentation 3. pip ํŒŒ์ด์ฌ ํŒจํ‚ค์ง€ ์„ค์น˜ ๋ฐ ๊ด€๋ฆฌ ํˆด pip documentation v22.0.4 โ–ช๏ธglobal & local 1. global ๊ฐ€์ƒํ™˜๊ฒฝ ์‹œ์Šคํ…œ ์ „์—ญ์— ์ ์šฉํ•˜๋Š” ํ™˜๊ฒฝ ๋”ฐ๋กœ ์ง€์ •ํ•ด์ฃผ์ง€์•Š์œผ๋ฉด, ๊ธฐ๋ณธ์ ์œผ๋กœ global ๊ฐ€์ƒํ™˜๊ฒฝ ์‚ฌ์šฉ 2. local ๊ฐ€์ƒํ™˜๊ฒฝ ํŠน์ • ๋””๋ ‰ํ† ๋ฆฌ ๋‚ด๋ถ€์—์„œ๋งŒ ์ ์šฉ๋˜๋Š” ํ™˜๊ฒฝ global ํ™˜๊ฒฝ์ด ์ง€์ •๋˜์–ด์žˆ๋”๋ผ๋„ ๋ฌด์‹œํ•˜๊ณ , local ํ™˜๊ฒฝ์ด ์ ์šฉ(์šฐ..
[Django & ๊ฐ€์ƒํ™˜๊ฒฝ] pyenv ์„ค์น˜ ๋ฐ ํ™˜๊ฒฝ ์„ค์ •(feat.mac M1) โ–ช๏ธError message Django ๊ฐœ๋ฐœ ํ™˜๊ฒฝ ๊ตฌ์„ฑ์„ ์œ„ํ•ด pyenv, pyenv-virtualenv๋ฅผ ์„ค์น˜ํ•˜๋ ค๊ณ  ํ•˜์˜€์œผ๋‚˜ M1์ด๋ผ ๋‹ค์Œ๊ณผ ๊ฐ™์€ Error๋ฅผ ์ง๋ฉดํ•˜์˜€์Šต๋‹ˆ๋‹ค. - ์—๋Ÿฌ ๋ฉ”์„ธ์ง€ ํ™•์ธ Error: Cannot install under Rosetta 2 in ARM default prefix (/opt/homebrew)! To rerun under ARM use: arch -arm64 brew install ... To install under x86_64, install Homebrew into /usr/local. ์ฐธ๊ณ ๋กœ ์ œ mac์€ MacBook Pro(14ํ˜•, 2021๋…„ ๋ชจ๋ธ)๋กœ, Apple M1 Pro์นฉ์ด ๋‚ด์žฅ๋˜์–ด์žˆ์Šต๋‹ˆ๋‹ค.๐Ÿ™‚ โ–ช๏ธsolution ๊ฐ„๋‹จํ•˜์ง€๋งŒ, ์—๋Ÿฌ๋ฉ”์„ธ์ง€์— ์ ํžŒ๋Œ€๋กœ ..