묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결FastAPI 실전편: JWT와 Redis로 완성하는 인증 시스템
게시글 삭제 API 구현 시 누락된 부분에 대한 질문
강의에서 게시글 삭제 API를 배웠는데, 강의 화면이 잘려서 완전한 코드를 확인하지 못했습니다. @app.delete("/posts/{post_id}", response_model=dict) def delete_post(post_id: int, db: Session = Depends(get_db)): query = select(Post).where(Post.id == post_id) post = db.execute(query).scalar_one_or_none() if post is None: raise HTTPException(status_code=404, detail="게시글을 찾을 수 없습니다.") db.delete(post) # ← 여기서 화면이 짤림깃허브 확인해서 코드를 완성하긴 했는데, 다른 수강생들을 위해서 강의 수강자료 또는 강의 업데이트 부탁드립니다.
-
미해결FastAPI 실전편: JWT와 Redis로 완성하는 인증 시스템
게시글 목록 조회 시 불필요한 예외 처리에 대한 질문
강의에서 배운 게시글 목록 조회 코드에서 궁금한 점이 있습니다. @app.get("/posts", response_model=list[PostResponse]) def get_posts(db: Session = Depends(get_db)): query = select(Post).order_by(Post.created_at.desc()) posts = db.execute(query).scalars().all() if posts is None: raise HTTPException(status_code=404, detail="게시글이 존재하지 않습니다.") return postsSQLAlchemy 2.0의 .all() 메서드는 데이터가 없을 때 None을 반환하는 게 아니라 빈 리스트 []를 반환한다고 알고있습니다.결과적으로 if 문을 탈 수가 없는데, 필요 없는 코드가 아닌가 해서요.그냥 빈 리스트를 반환하면 되지 않나요?
-
미해결베개 투자법: 자면서 돈 버는 AI 주식 자동 매매 머신
colab 실행시간이 너무 오래걸리는데 이게 맞을까요?ㅠ
50개인데 하나당 3분씩은 걸려서 총 3시간은 걸릴것같아요! 초반에 GPU 백엔드에 연결할 수 없음 팝업이 뜨는데 관련이 있는걸까요? 어제 수업 처음 들을 땐 10분내에 처리가 되었는데 갑자기 이러네요ㅠ
-
미해결FastAPI 완벽 가이드
비동기처리와 멀티스레드
안녕하십니까 강사님! 오늘도 감사히 강의를 듣고 있습니다.fastapi는 비동기처리로 효율적으로 처리한다해서 자바쪽은 어떻게 할까 궁금해서 조사만 해봤는데 멀티스레드로 병렬처리로써 효율적으로 처리한다고 알게되었습니다.그러나 궁금한 점이 생겼습니다. fastapi에서 io작업같이 오래 걸리는 부분에 비동기 처리를 하는건 이해했는데 왜 단순 서비스로직 같은 경우에서는 비동기처리를 사용안하는지 궁금합니다.제 생각에는 단순히 생각해서 모든 처리를 비동기처리 해도 될 거 같은데 왜 그렇게 안하는지 어떠한 부분에서 문제가 발생할 수 있는지 궁금합니다.또한 만약에 비동기처리를 안하고 동기처리로 할때 멀티스레드로 하는지도 궁금합니다.아니면 혹시 서비스 로직같은 단순 cpu연산을 사용할때는 워낙 연산 속도가 빠르니 비동기처리와 동기처리가 속도차이가 없어서 그러한 부분들을 고려하지 않아도 되는지 이런 차이들이 궁금합니다! 항상 좋은 강의 감사드리며 정말 저에겐 소중한 강의입니다!
-
미해결실전! FastAPI 입문
FasAPI Swagger UI에서 단일조회 todo_id 를 사용했는데, 입력값에 1을 넣으니 오류가 뜹니다 ㅠ
현재 GET 단일 조회 API 강의를 듣고있는데, 강의 마지막에 FastAPI로 들어가서 Swagger UI를 사용해 해보는 것에서 입력값에 1을 넣었더니 반환값이 오지 않네요 ㅠ 어떤 것이 문제인지 모르겠습니다 .
-
미해결베개 투자법: 자면서 돈 버는 AI 주식 자동 매매 머신
MCP 적용 안되시는분 이거 보세요.
https://smithery.ai/server/@smithery-ai/filesystem위 사이트의 파일시스템 연결하는 부분이 강의랑 좀 달라졌습니다.경로를 Cursor에 직접 등록하는 부분이 아니라 아래의 Connect 부분에서 Configure 부분에 디렉토리를 입력하도록 변경됬네요. 우측 상단에 Configure 누르시면 allowedDirectories를 입력하는 창이 생깁니다.주의! 리스트 형태로 넣어줘야 합니다.["경로1", "경로2"] 처음에는 경로를 하나씩 넣고 Add Item으로 추가해줬는데.. 계속 빨간불 떠서 이것 저것 다해보다가 저 위의 방식으로 해결됬습니다.참고들 하세요..
-
해결됨FastAPI 완벽 가이드
fastapi의 가능성에 대해 궁금합니다.
안녕하십니까 강사님! fastapi강의를 정말 유익하게 보고 있습니다. 정말 감사드립니다.다름이 아니라 저는 현재 학생으로써 백엔드 개발을 빠르게 이해하고 싶어서 개발 속도가 빠른 fastapi를 선택하여 공부중입니다. fastapi의 기술 스택을 익히면 어느 방향성에서 강점을 보일까요?물론 하고자 하는 목표를 정하고 그에 맞는 기술을 배우는 것이 훨씬 더 좋은 방향이라고 생각하나 수업을 듣던중에 그럼 이렇게 장점을 가진 fastapi기술은 어디에서 사용할까? 단순 백엔드 개발로써는 자바가 많이 보편화 되어있으니 국내에서는 자바가 훨씬 유리할 거 같은데 국내에서는 어떤 방식으로 이 프레임워크를 다룰까? 이런 부분들이 궁금해졌고 이런 부분들을 알아야 조금 더 fastapi의 강점을 생각하면서 공부에 도움이 될 거 같아서 질문드립니다.강사님이 생각하시기에 fastapi는 어떤 분야에서 강점을 보이고 어떤 분야에서 이 프레임워크를 사용해 확장할 지 궁금합니다. 학생의 관점에서 보면 시야를 넓게 보는게 한계가 있어서 도움을 청합니다. 실례가 안된다면 뛰어난 경력을 가지신 강사님께 여쭙고 싶습니다!만약에 바쁘시다면 키워드라도 주시면 제가 직접 자료 조사를 해서 알아가도록 하겠습니다. 다시 한번 좋은 강의를 제공해주심에 감사를 표합니다! 강의 관련 제 생각은 강의를 다 본 후에 강의평에 남기도록 하겠습니다!
-
해결됨FastAPI 완벽 가이드
어디가 필요없는 코드인지 알아내려면....
제가 아래의 사이트를 자체 서버를 만들어 구동을 해보았습니다. 물론 테스트 및 학습용으로....http://112.166.186.238/사용한 것들App서버: FastAPI로 백엔드 api와 간단한 프론트 엔드DB 서버: MySQLRedis 서버Nginx 서버Portainer.io를 이용해, Dockerfile로 이미지 생성하고 4개의 컨테이너를 만들어, 구동시켰습니다. 서버는 제가 쓰던 오래된 개인 PC(아마도 족히 15년가까이된 구닥다리 컴퓨터)에 우분투 22.04.5 LTS를 설치해서 서버 구동을 시켰습니다.제가 전공자는 아니고, 완전히 다른 직업군에 있는 사람이라... 몇년전에 장고, 플라스크로 웹어플리케이션 공부를 한적이 있는데 그때 웹프레임워크만 제외하고 똑같은 방식으로 서버구동을 시켜본 적이 있는데... 이번에 FastAPI로 한번 더 공부하면서 구축해보았습니다.아직, docker-compose.yml로 docker swarm 구축을 해보지는 못했구요... 그런데 여기까지 오면서 궁금해진것이 바로 직전에 질문하신 분처럼 nginx서버 설정을 하다보면, FastAPI코드에서 굳이 없어도 될 부분의 설정부분이 있을 것 같은데.... 그게 어떤것인지 궁금해지더라구요... 예를 들면,정적파일 처리를 nginx에서 처리하는 경우 app.mount()가 필요없을 것 같은데... 답변이 그렇게 되어 있어, 예상했던 데로 였습니다. app.mount()가 설정이 있어도 무방한 것인지 궁금합니다. 또한 저는 정적파일 css. js 파일들은 nginx에서 처리하지 않도록 했는데... 바뀔수가 있을 것 같아서... 여기서 궁금한것: 이렇게 해도 무방한 것인지 궁금합니다. (참고로,저는 static/media폴더 안에 user_images, user_videos폴더를 만들어 user가 업로드하는 파일들을 그 폴더안에 저장하게 로직을 작성했습니다. nginx에서 이 디렉토리를 찾아갈 수 있게 해 놓았고, volume mount를 해서 컨테이너가 삭제되더라도 사용자가 올린 실제 이미지들이 삭제되지 않게 했놨습니다. )MySQL서버와 Redis 서버를 찾아가는 FastAPI코드가 있고, yml파일로 컨테이너를 만드는 코드를 작성할 때, network로 서로를 연결하게 될텐데.... 이때 MySQL서버와 Redis 서버를 찾아가는 FastAPI코드가 없어야만 되는지, 아니면, 있더라도 상관이 없는 것인지... 그것도 궁금합니다.이 두가지 말고도 yml작성시에 들어가는 내용때문에 FastAPI코드에서 굳이 없어도 부분이 있는지 궁금합니다.감사합니다.
-
미해결베개 투자법: 자면서 돈 버는 AI 주식 자동 매매 머신
mcp서버 설치 문의
{ "mcpServers": { "filesystem": { "command": "cmd", "args": [ "/c", "npx", "-y", "@smithery/cli@latest", "run", "@smithery-ai/filesystem", "--key", "4fcb4b94-c3b0-4d0c-adec-af00fcb82857", "--profile", "tall-shark-glGEAE" ] } } } { "mcpServers": { "filesystem": { "command": "cmd", "args": [ "/c", "npx.cmd", "-y", "@modelcontextprotocol/server-filesystem", "C:\\Users\\zzzz5\\Documents\\GitHub\\test-github\\documents" ] } } }2번째 소스코드로 진행해도 상관없나요??
-
미해결FastAPI 완벽 가이드
nginx를 사용하고 static 설정을 하는 경우도 app.mount 설정을 해야 하나요?
nginx에 static 설정을 하여 nginx 서빙을 할 수 있게 만들 수 있는 것으로 알고 있습니다.이때 app 서버와 동일한, 동기화된 폴더를 유지해야 하는 것으로 알고 있습니다.이미지도 처리를 하는 경우에는 그렇게 이해하고 있습니다. 이렇게 설정하는 경우에도 app.mount로 static 설정을 해줘야 하는 것인가요? 렌더링 문제가 아니라면, fastapi에서 mount를 유지할 필요가 없을거 같아 질문을 드려봅니다.
-
미해결FastAPI 완벽 가이드
logout 태그 관련 질문
navbar.html에서 로그아웃 버튼을 생성 할 때 기존에 {% if session_user % }... (1){% else %}... (2){% endif %}하고 이 아래 쪽에 다시 if session_user를 해서 로그아웃을 하는 이유가 무엇일까요? 그냥 (1) 위치에 a태그 달아서 로그아웃을 만들면 안될까요?
-
미해결파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
대규모 크롤링 시 동시 요청 수 제어 방법
asyncio.gather()를 사용해 여러 요청을 동시에 처리하는데, 실제 프로덕션 환경에서는 어떻게 다루는지 궁금합니다.예를 들어, 페이지를 1,000개 크롤링하거나 이미지를 수천 장 다운로드할 때 서버에 부하가 생기거나 IP 차단 같은 문제가 발생할 것 같습니다.해결 방법으로 동시 요청 수를 제한하는 게 좋을까요? 만약 그렇다면 적절한 동시성 수준(5개? 10개? 50개?)은 어떤 기준으로 결정하나요?
-
해결됨FastAPI 완벽 가이드
안녕하세요. 질문 하나 드려도 될까요?
AI 모델 서빙 목적으로 fastapi를 사용한다면 해당 강의에서 다룬 주제들 외에도 추가적으로 공부해야 하거나, 하면 좋은 게 있을까요?있다면 자세히는 아니더라도 키워드라도 말씀해주시면 감사하겠습니다!
-
해결됨React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!
verify_token 함수의 네이밍에 대한 질문입니다
안녕하세요!JWT 구현 중 verify_token 함수의 네이밍이 궁금합니다. app/core/jwt_handler.pydef verify_token(token: str) -> int: payload = decode_token(token) return payload.get("uid") verify라는 이름은 보통 boolean을 반환할 것 같은데, 실제로는 uid(int)를 반환하고 있어서 조금 헷갈립니다. get_uid_from_token이나 extract_user_id 같은 이름이 더 명확하지 않을까요? 감사합니다!
-
미해결FastAPI 실전편: JWT와 Redis로 완성하는 인증 시스템
pdm 패키지를 사용하지 못할경우
uv사용해도 괜찮나요? Poetry 로 JWT 강의 해보다가 막혀서 mac에서 진행했는데 윈도우에서도 하고 싶어서 질문드립니다.
-
해결됨베개 투자법: 자면서 돈 버는 AI 주식 자동 매매 머신
13,14강 외부 API 설정 오류
.env 폴더에 URL 등 key를 넣었는데도 에플리케이션 스타트업 fail이 뜹니다. 뭐가 문제일까요 ㅠㅠ
-
해결됨React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!
6-2 강의 노션 코드 오타인거죠? 2
위치:SingleTopic/Chart/ChartCanvas.jsx (39번 라인)문제: stroke={colors[i].bg} // ❌ 현재 코드원인:voteColors.js의 실제 구조는 문자열 배열입니다예: 2: ["#10B981", "#F43F5E"].bg 프로퍼티가 존재하지 않아 undefined 반환해결:stroke={colors[i]} // ✅ 수정 코드결과: 수정 후 차트 선 색상이 정상적으로 표시됩니다.제안:후속 수강생들을 위해 강의 자료 업데이트 부탁드립니다. 강의 노션 코드에 오타가 너무 많아서 도움을 주는 자료인지 강의 진행을 방해하는 자료인지 모를 정도입니다. 솔직히 좀 심각합니다.감사합니다.
-
해결됨내가 타이타닉에 탔었다면?! PyTorch & Next.js로 생존 확률 예측 AI 웹 서비스 만들기
파일명 , 폴더명 대문자 소문자, 케이스 구별법이궁금해요
7-4강의 듣고있는데Utils에서 predictUtils.tsx 이것이고Types 에선 Predict.ts 대문자이구 frontend 구조중에서 해당 프로젝트의 소스코드 폴더별로 대문자 인지, 소문자인지 ,파일별로도 마찬가지고. 컨벤션이 궁금해요
-
해결됨React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!
[강의 오류 리포트] React Router Outlet 사용 오류
문제 발생 섹션: 4-1. Footer 제작문제 내용:강의 자료에서 제공된 App.jsx 코드에 구조적 오류가 있습니다.문제점:1. RootLayout 컴포넌트 내부에서 <Outlet /> 컴포넌트를 사용하고 있으나, 라우터 설정에 자식 라우트(children routes)가 정의되어 있지 않습니다.2.현재 라우터 구조:```const router = createBrowserRouter([ { path: "/", element: <LootLayout />, // children이 없음 - Outlet이 렌더링할 내용이 없음 },]);```발생한 에러:Outlet 컴포넌트 관련 에러 발생해당 코드 제거 시 정상 동작제안 사항:아래 두 가지 중 하나로 수정이 필요합니다:방법 1)자식 라우트가 없다면 Outlet 제거```<main className="flex-grow container mx-auto px-4 py-8"> {/* <Outlet /> 제거 */}</main>추가 의견:해당 강의를 수강하면서 이번 건 외에도 여러 오류를 발견했습니다. 학습에 상당한 지장이 있는 상황이므로, 강의 전체에 대한 코드 검수 및 업데이트를 요청드립니다.특히 React Router v6의 최신 문법과 개념(Outlet, createBrowserRouter 등)이 정확히 반영되었는지 재확인이 필요해 보입니다.수강생들이 불필요한 디버깅 시간을 소비하지 않도록 조속한 개선 부탁드립니다.
-
해결됨React & FastAPI로 만드는 투표 커뮤니티 플랫폼: 결제 시스템으로 수익화까지!
[강의 오류 제보] Navbar 컴포넌트 코드 오류 발견
안녕하세요, '리액트 + FastAPI로 투표 커뮤니티 플랫폼' 강의를 수강 중인 학습자입니다. 강의 자료의 코드를 그대로 따라했을 때 에러가 발생하여 제보드립니다. --- 📍 발생 위치: - 강의 섹션: [섹션 3/ch2. 메뉴바 제작] - 파일: src/Components/Navbar/index.jsx ❌ 발생한 에러: ReferenceError: logout is not defined 🔍 문제 원인: 강의 자료 코드에서 함수는 onLogoutClick, onLoginClick, onSignupClick으로 정의했으나, 자식 컴포넌트에 전달할 때는 정의되지 않은 logout 변수를 사용하고 있습니다. 현재 강의 자료 코드: ```javascript const onLogoutClick = () => { ... }; <AuthButtons logout={logout} /> // ❌ logout 미정의 <MobileMenu logout={logout} /> // ❌ logout 미정의```수정방법:<AuthButtonsisAuthenticated={isAuthenticated}isOpen={isOpen}setIsOpen={setIsOpen}onLogoutClick={onLogoutClick} // ✅ 수정onLoginClick={onLoginClick} // ✅ 추가onSignupClick={onSignupClick} // ✅ 추가/><MobileMenuisOpen={isOpen}setIsOpen={setIsOpen}isAuthenticated={isAuthenticated}onLogoutClick={onLogoutClick} // ✅ 수정onLoginClick={onLoginClick} // ✅ 추가onSignupClick={onSignupClick} // ✅ 추가/>💡 제안: 이전 강의 자료에서는 올바르게 onLogoutClick 등을 전달하고 있었는데, 특정 시점부터 logout으로 변경되면서 함수명과 불일치가 발생한 것으로 보입니다.강의 자료 업데이트 부탁드립니다. 감사합니다.