2021 ~ ํ์ฌ: ๋ฐฐ๋ฌ W์ฌ ํ์ด์ฌ ๋ฐฑ์๋ ๊ฐ๋ฐ์
2022: S ์ฝ๋ฉ ํด๋ฝ python ํํฐ
์ด๋ ฅ์ ํ์ด์ง:
Courses
Reviews
- How does a delivery app find good restaurants near me?
- How does a delivery app find good restaurants near me?
- How does a delivery app find good restaurants near me?
- How does a delivery app find good restaurants near me?
- How does a delivery app find good restaurants near me?
Posts
Q&A
ํ์ด์ฐธ์ ์ด์ฉํด์ Python Interpreter ํตํด ๋ผ์ด๋ธ๋ฌ๋ฆฌ ์ค์น๊ฐ ์๋๋๋ฐ ๋์์ด ํ์ํฉ๋๋ค.
๋ฆฌ๋๋ ์๋ ํ์ธ์!ํ๊ฒฝ๋ณ์ PYTHONUTF8 ์ค์ python ์ด ์ธ์ํ๋ ํ๊ฒฝ๋ณ์์ค์ PYTHONUTF8 ์ด๋ ๊ฒ์ด ์๋๋ฐ์, https://docs.python.org/ko/3.12/library/os.html#utf8-modecp949 ์ฝ๋ฑ ๊ด๋ จ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ๊ฒ์ผ๋ก ๊ธฐ๋๊ฐ ๋ฉ๋๋ค~์๋์ฐ ํ๊ฒฝ๋ณ์์ ์ด ๋ณ์์ ๊ฐ์ 1๋ก ์ค์ ํด๋ณธํ ์ฌ์๋ ํด๋ณด๋ฉด ์ข์ ๊ฒ ๊ฐ์ต๋๋ค. ํฐ๋ฏธ๋์์ poetry ์คํํ์ฌ ํฐ๋ฏธ๋์์ poetry shell ์ ์ ๋ ฅํด๋ณผ๊น์? ์ด ๋ช ๋ น์ด ์ฑ๊ณตํ๋ฉด poetry ๊ฐ์ํ๊ฒฝ์ด ์กด์ฌํ๋ค๋ ๋ป์ด๊ณ ์คํจํ๋ฉด ๊ฐ์ํ๊ฒฝ์ด ์์ ๊ฐ๋ฅ์ฑ์ด ๋์ต๋๋ค.(์คํฌ๋ฆฐ์ท๋ง ๋ณด์์๋์๋ pycharm ์ด poetry ๊ฐ์ํ๊ฒฝ์ ๋ง๋๋๊ฒ ์์ฒด๋ฅผ ์คํจํ ๊ฒ์ธ์ง, ํน์ ๋ง๋๋ ๊ฒ์ ์ฑ๊ณตํ์ง๋ง ์ดํ์ ํ๊ฒฝ ๋ด๋ถ๋ฅผ ์กฐํํ๋๋ฐ ์คํจํ ๊ฒ์ธ์ง ๊ฒ์ฆํด๋ณผ ํ์๊ฐ ์์ ๊ฒ ๊ฐ์์ ๊ทธ๋ ์ต๋๋ค)
- 0
- 2
- 31
Q&A
์บ์ ๊ตฌํ์์ Redis - MongoDB ์ค์ฝํ
ํ์ฌ๋ ์๋ ํ์ธ์! ์ด๊ฑด ์ ๊ฐ์์์๋ง์ ๊ท์น์ธ๋ฐ์~ entity ๋ repository ์ collection ์ ๊ฐ์ง ์ ์๋ค๊ณ ๋ณด์์ต๋๋ค~redis ๋ฅผ ์ง์ ํธ์ถํ๋ ์ฑ์์ redis repository ์์ผ๋ก ์ ํํ๊ตฌ์
- 0
- 2
- 83
Q&A
๊ฐ์ฌ๋๊ป์ entity๋ฅผ ์ฌ์ฉํ์ ์ด์ ๊ฐ ๊ถ๊ธํฉ๋๋ค
yuki ๋ ์๋ ํ์ธ์! ์ ๊ฐ ๋ต์ด ๋ฆ์์ต๋๋ค ใ ใ ...๋๋ ํฐ๋ฆฌ ๊ตฌ์กฐ๋ ์ ๊ฐ ์ง๊ธ๊น์ง ๊ฐ๋ฐํด ์ค๋ฉด์ ์ค์ค๋ก ํธํ๋ค๊ณ ์๊ฐํ ๋๋ก ๋ง๋ค์์ต๋๋ค~ ํน๋ณํ ์ฐธ๊ณ ํ ์๋ฃ๋ ์์ต๋๋ค.entity ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ ์ด์ -> entity ๊ธฐ๋ฐ์ด ๋ฌด์์ธ์ง, entity ๊ธฐ๋ฐ์ด ์๋๊ฒ์ ๋ ๋ฌด์์ธ์ง ์กฐ๊ธ ๋ ์์ธํ ์ค๋ช ํด ์ฃผ์ค ์ ์์ผ์ค๊น์ฉ?
- 0
- 2
- 219
Q&A
odm ๊ด๋ จ
@Daniel Ryu@ky.kim(์ธํ๋ฐ์ ๋ฉ์ ๊ธฐ๋ฅ์ด ์๋๋ณด๋ค์ ใ ใ )์ธํ๋ฐ ์ธํด๋๊ป์ ๋ต์ ์ ๋ณด๋ค ์ํด์ฃผ์ ๊ฒ ๊ฐ์๋ฐ ๋ง์ต๋๋ค! beanie ๊ฐ์ odm ์ ์ ์ด ์ด์ -> ์์ฑํ๋ ์ฝ๋๋์ ์ ๋ฐฉ์์ด ๋น๊ต์ ๋ง์ ๊ฒ ๊ฐ์๋ฐ, ์ ๋ฐฉ์์ด ์์ ๋๊ฐ ๋ ๋๊ณ , ํ repository ์์ ๋ชจ๋ ์ฟผ๋ฆฌ๊ฐ ๋ชจ์ด๊ฒ ๋์ด ์์ง์ฑ์ด ์๋ค๊ณ ์๊ฐํด์~ dataclass -> ์ฑ๋ฅ๋๋ฌธ์ ๊ทธ๋ฌํ๊ณ , pydantic ์ ๋ฐฐ์ฐ๋ ๋ถ๋ด์ ์กฐ๊ธ ๋๊ธฐ ์ํด์ ์ ํํ์ต๋๋ค!์ ๋ ์ค์ ์์ http request dto, response dto ๋ pydantic ์ ์ ์ฉํ๋ต๋๋ค~
- 0
- 3
- 397
Q&A
ํ ์คํธ๋ฅผ ์คํํ์ ๋ RuntimeError: Event loop is closed ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค.
ใ ใ ๋ค ํด๊ฒฐ๋์ด์ ๋คํ์ ๋๋ค!์ด์ ๋ฒ์ค์์ ๊ธํ๊ฒ ๋ด๋ฆฌ๋๋ผ๊ณ ์ด๋ฏธ์ง๋ง ๋ฌ๋ ์ฌ๋ ธ์๋๋ฐ ใ ใ ใ ์๊ฑฐ ๋ฏธํด๊ฒฐ๋ก ๋ฐ๋์ด ๋ฒ๋ฆฌ๋ ๋ต ์์ฃผ์ ๋ ๊ด์ฐฎ์ต๋๋ค!๊ฐ์ ๋ค์ผ์๋ฉด์ ๊ถ๊ธํ ์ ์์ผ์๋ฉด ๋ ํธํ๊ฒ ์ง๋ฌธ ์ฃผ์ ์ฉ ํ์ดํ ! ์ ์ ๊ฐ ๋ฌ์๋ ๋ฏธํด๊ฒฐ๋ก ๋ฐ๋์ด ๋ฒ๋ฆฌ๋ค์ ์ผ์
- 3
- 3
- 2K
Q&A
ํ ์คํธ๋ฅผ ์คํํ์ ๋ RuntimeError: Event loop is closed ์๋ฌ๊ฐ ๋ฐ์ํฉ๋๋ค.
ํน์ ์๊ฐ์ด ๊ด์ฐฎ์ผ์๋ค๋ฉด ์๊ฐ์ ๋ฐ๋ก ์ก์์ ํ๋ทฐ์ด ์๊ฒฉ์ผ๋ก ๋ด ๋ณผ๊น์? ์ ๋ ๊ถ๊ธํ๋ค์๋ค์์ฃผ ํ์ผ ์ด๋ฅธ ์์นจ, ๋ฆ์ ์ ๋ ์ค์ ๊ด์ฐฎ์ ์๊ฐ ์์ผ์ธ์?
- 3
- 3
- 2K
Q&A
test.sh ํ์ผ ์คํ ํ ์๋ฌ ์ฒ๋ฆฌ ๋ฐฉ๋ฒ
์๋ ํ์ธ์! ์ด์ฌํ ๊ฐ์ ๋ค์ด์ฃผ์ ์ ๊ฐ์ฌํฉ๋๋ค :) ์คํฌ๋ฆฐ์ท์ ๋ณด๋ฉด venv ๋ด๋ถ๋ฅผ mypy ๋ก ๊ฒ์ฌํ๊ณ ์๋ ๊ฒ ๊ฐ์ต๋๋ค.(๊ฒ์ฌํ ํ์๊ฐ ์๋๊ฒ ๊ฒ์ฌ๋๊ณ ์์ด์!) ํด๊ฒฐ ๋ฐฉ๋ฒ์ ๋ ์ค ํ๋๋ฅผ ์ ํํ๋ฉด ๋๋๋ฐ์,1) venv ๋ฅผ ํ๋ก์ ํธ ๋ฐ์ผ๋ก ๊บผ๋ธ๋ค.2) mypy ์ค์ ์์ venv ๋ฅผ ๊ฒ์ฌํ์ง ์๋๋ก omit ํ๋ค. ์ ๋ 1๋ฒ ๊ธฐ์ค์ผ๋ก ์ค๋ช ์ ๋๋ฆฌ๊ฒ ์ต๋๋ค.(์ฌ์ง)pycharm ์ค์ > Project > Python Interpreter ๋ก ๋ค์ด๊ฐ๋ฉด ์ด๋ค ๊ฐ์ํ๊ฒฝ์ ์ฌ์ฉ์ค์ธ๋น ๋ณผ ์ ์์ต๋๋ค./Caches/pypoetry/virtualenvs/๋๋ค ๊ฐ์ํ๊ฒฝ ๋ฌธ์์ด ์์ ๊ฐ์ํ๊ฒฝ์ด ๋ค์ด์๋์ง ํ์ธํด์ฃผ์ธ์! a) ๋ง์ฝ ํ๋ก์ ํธ ๋ด๋ถ์ ๊ฐ์ํ๊ฒฝ์ด ์๋ค๋ฉด, ์ค๋ฅธ์ชฝ์ Add Interpreter > Add local Interpreter > Poetry Environment ๋ฅผ ์ ํํด์ ๊ฐ์ํ๊ฒฝ์ ์๋ก ๋ง๋ ํ์, ๊ธฐ์กด์ ๊ฐ์ํ๊ฒฝ์ ์ญ์ ํด์ฃผ์ธ์. b) ์๋ก ๊ฐ์ํ๊ฒฝ์ ๋ง๋ค์ด๋ ํ๋ก์ ํธ ๋ด๋ถ์ ๋ง๋ค์ด์ง๋ค๋ฉดpoetry config virtualenvs.in-project ๋ฅผ ์ ๋ ฅํด์ ๊ทธ ๊ฒฐ๊ณผ๊ฐ์ด null ์ธ์ง ํ์ธํด์ฃผ์ธ์! ๋ง์ฝ null ์ด ์๋๋ผ๋ฉดpoetry config --unset virtualenvs.in-project๋ก null ๋ก ๋ง๋ค ์ ์์ต๋๋ค. (์ฌ์ง)
- 0
- 1
- 507
Q&A
ManyToMany ๋ฅผ OneToMany ๋ก ํ์์ ๋
์ ์๋ ๋ต๋ณ ๊ฐ์ฌํฉ๋๋ค! ๋๋ถ์ ๊ณ ๋ฏผ์ด ํด๊ฒฐ๋์์ต๋๋ค! ํ๊ฐ์ง ๋ ๊ณ ๋ฏผ์ด ์๊ฒผ๋๋ฐ์ฉ... # ์ํฉ https://gist.github.com/aliwo/482b6ba636eb263d619ad50a42e7bd05 ์์ ์ฌ๋ก์ ๊ฐ์ด User ์ Party ๊ฐ ์๊ณ , ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ party_user ๊ฐ ์์ต๋๋ค. ์ฐ๊ด๊ด๊ณ ํ ์ด๋ธ์ row ์ธ PartyUser ๋ฅผ ์ญ์ ํด๋, party.getUsers() ๋ฅผ ํ์ ๋ ๋ถ๋ช ํ ์ญ์ ๊ฐ ๋์์ด์ผ ํ PartyUser ๊ฐ ๊ท์ ์ฒ๋ผ ๋จ์์์ต๋๋ค...! # ๊ฐ์ค ๋ช๊ฐ์ง ๊ฐ์ค์ ์ธ์์ ๊ฒ์ฆํด ๋ณด์์ต๋๋ค... ## ๊ฐ์ค 1: PartyUser ๊ฐ ์ญ์ ๋์ง ์์๋ค. -> ์ญ์ ๋ ๊ฒ์ผ๋ก ํ์ธ๋จ! partyUserRepository.findAll() ์ ๊ฒฐ๊ณผ๊ฐ ๋น ๋ฆฌ์คํธ์ธ ๊ฒ์ ํ์ธํ์ต๋๋ค. ## ๊ฐ์ค 2: data-jpa ์ repository ๋ ์ ๋ง๋ค์ transaction ์ ๊ฐ๋๋ค. -> ์ฌ์ค์ด ์๋! ์๋์ ๊ฐ์ raw query ๋ฅผ ๋ ๋ ค๋ณด๋ connection_id ๋ ๋ค ๊ฐ์๊ณ , ํธ๋์ ์ ๋ ํ๋์์ต๋๋ค. ``` @Query(value = "SELECT COUNT(1) as cnt, CONNECTION_ID() as connId FROM information_schema.innodb_trx WHERE trx_mysql_thread_id = CONNECTION_ID();", nativeQuery = true)Itime selectTrx(); ``` # ์ง๋ฌธ ๋ถ๋ช ํ PartyUser ๋ ์ญ์ ๋์๋๋ฐ... ์ด์งธ์ party.getUsers() ๋ฅผ ํ์ ๋๋ partyUser ๊ฐ ๋จ์์๋ ๊ฒ์ธ์ง ๊ถ๊ธํฉ๋๋ค! (party ์ users ๋ฆฌ์คํธ์์ partyuser ๋ฅผ ์ง์ ์ ๊ฑฐํด์ผ ํ๋ค๋ ๊ฒ์ ์๊ณ ์์ต๋๋ค! ํ์ง๋ง ์ด party user ๊ฐ ๋๋์ฒด ์ด๋ป๊ฒ ๋จ์ ์์ ์ ์๋ ๊ฑด์ง ๊ถ๊ธํฉ๋๋ค~) (party.getUsers().removeIf(pu -> pu.getUser().getId().equals(target.getId()));)
- 0
- 3
- 787
Q&A
์ฑ๊ธํค์ด DIP๋ฅผ ์๋ฐํ๋ค๋ ์ ์์ ์ง๋ฌธ์์ต๋๋ค.
(์ฌ์ง)
- 7
- 2
- 944
Q&A
@Component์ @Bean์ ์ฐจ์ด์ ?
์ ์ ๋ ๊ถ๊ธํด์ ์ฐพ์์๋๋ฐ ๋๋ถ์ ์์ํ๊ฒ ํด๊ฒฐ๋ฌ์ต๋๋ค! ๊ฐ์ฌํฉ๋๋ค!
- 17
- 6
- 1.1K