묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
pdf 14_async_sqlalchemy 데이터 검색(읽기) github 링크
pdf 14_async_sqlalchemy 데이터 검색(읽기) github 링크가 잘못 연결되어있습니다.https://gist.github.com/DaveLee-fun/3ff74108d3b58f8ffb731c1ec106691e연결되어 있는 페이지에 코드는 async 비동기 실행 코드가 아닌 그냥 sqlalchemy 코드입니다.
-
해결됨FastAPI 완벽 가이드
url 차이 질문
@app.get("/items") # 함수에 개별 인자값이 들어가 있는 경우 path parameter가 아닌 모든 인자는 query parameter # query parameter의 타입과 default값을 함수인자로 설정할 수 있음. async def read_item(skip: int = 0, limit: int = 2): return fake_items_db[skip : skip + limit] @app.get("/items_nd/") # 함수 인자값에 default 값이 주어지지 않으면 반드시 query parameter에 해당 인자가 주어져야 함. async def read_item_nd(skip: int, limit: int): return fake_items_db[skip : skip + limit]안녕하세요 url 차이에 관해 질문드립니다. 위에 url은 "/items" 인데, 아래 url은 "/items_nd/" 으로 끝에 /가 붙어있는데요. 둘다 query params로 구성되어 있는데 위는 /로 안끝나고, 아래는 왜 /로 끝났는지 이유가 궁금합니다.
-
해결됨처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
섹션 12 SQLAlchemy 검색 기본 문법 질문
섹션 12 SQLAlchemy 검색 기본 문법7분 54초@app.get("/users/{user_id}") def read_user(user_id: int, db: Session = Depends(get_db)): db_users = db.query(User.username, User.email).all() if db_users == []: return {"error": "User not found"} return {"db_users": db_users}강의 내용과 동일하게 작성하여 실행 했는데,아래와 같은 오류가 났습니다.구글 검색 해 봐도... 잘 모르겠어서 질문 남겨봅니다... ValueError: [ValueError('dictionary update sequence element #0 has length 6; 2 is required'), TypeError('vars() argument must have __dict__ attribute')]
-
미해결FastAPI 완벽 가이드
Type Hint에 대한 설명 요청
동영상 음성이 너무 작습니다. 매번 따로 조절해줘야하는 번거로움이 있습니다.파이썬 문법보다는 실전적인 내용에 충실하시려는 의도는 느껴지지만 Type Hint, Decorator, Class 같은 고급문법 정도는 짚고 넘어가주시면 강의내용이 좀 더 이해가 잘 되지않을까 싶습니다.강의 초반부에 뒤에서 설명하시겠다고 하고 넘어가는 부분이 자주 있어서 강의 중반부부터 이해가 되지 않습니다. 실무적인 내용도 좋지만 최소한의 이론적인 설명도 명확하게 짚어주시면 어떨까 싶습니다.
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
Fast API 개발환경설정 자료
강의 자료 다운로드 받고 압축 풀고 확인 해 봤는데,Fast API 개발환경설정 강의에서 보여주시는 00_FASTAPI_START 설명 파일(ppt자료?)이 없습니다.혹시 파일 누락된것이 아닐까요?확인 부탁드립니다.!
-
해결됨FastAPI 완벽 가이드
WSGI, ASGI 와 미들웨어 간의 관계
안녕하세요! 강의 잘 보고 있습니다. 강의를 보는 중에 헷갈리는 개념이 있어서 질문드려요!올려주신 강의 중 미들웨어 챕터 부분을 보고 있어요. 그런데 문득 미들웨어와 uvicorn, gunicorn, hypercorn 과 같은 WSGI, ASGI 서버 간의 관계에 대해서 궁금증이 들었습니다. 보통 언어에 상관없이 웹 통신을 한다라고 하면 아래와 같은 구조로 통신한다고 볼 수 있잖아요?(DB가 있다고 가정)"""Client(Web Browser) ---> Web Server ---> Web Application Server ---> DB"""그리고 파이썬에서는 uvicorn, gunicorn 과 같은 WSGI, ASGI 서버들이 Web Server 역할을, Flask, FastAPI 와 같은 프레임워크 서버들이 Web Application Server의 역할을 한다고 알고 있습니다. 그리고 저 Web Server 요소가 미들웨어라고 정의한다고 알고 있었는데요! 그런데 FastAPI 공식문서 상에서는 미들웨어라는 것을 소개할 때, "모든 요청 또는 응답에 대해서 사전 또는 사후 처리 로직을 추가할 때 사용하는 것" 이라고 소개를 하면서 문득 "그러면 여기서 이야기하는 미들웨어랑 uvicorn, gunicorn 과는 어떤 차이점이 있는거지?" 하면서 헷갈리더라구요. 자바에서는 미들웨어라는 개념이 JVM 위에서 동작하면서 DB 연결, TCP/IP 연결 등과 같이 다른 소프트웨어(ex.애플리케이션)가 잘 동작하도록 지원해주는 소프트웨어라고 알고 있는데요! 만약 이러한 관점에서 본다면 uvicorn, gunicorn 과 같은 WSGI 또는 ASGI 서버들도 미들웨어라고 볼 수는 없는 걸까요? ChatGPT 한테 물어보았을 때는 엄연히 다른 개념이라고 하는데.. 정확히 차이점을 잘 모르겠어서요. 답변 해주시면 감사하겠습니다! (참고로 저는 파이썬으로만 오랫동안 개발해와서 자바나 다른 언어 관련해서는 잘 모를 수도 있어서 다른 언어에 대한 비유로 답변 주시면 제가 잘 이해를 못할 수도 있습니다!)
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
curl -X POST http://127.0.0.1:8000/set/ -i -c cookies.txt 에러
세션을 실행하고 있어 curl로 실행하려고 하는데 아래와 같은 에러 메세지가 뜨네요.Invoke-WebRequest : 매개 변수 이름 'c'이(가) 모호하므로 매개 변수를 처리할 수 없습니다. 일치하는 항목은 다음과 같습니다. -Credential -CertificateThumbprint -Certificate -ContentType.위치 줄:1 문자:45+ curl -X POST http://127.0.0.1:8000/set/ -i -c cookies.txt+ ~~실행하면 위와 같은 에러메시지가 나오는데 어떻게 해결할 수 있나요? from fastapi import FastAPI,Request from fastapi.security import HTTPBasic from starlette.middleware.sessions import SessionMiddleware app=FastAPI() app.add_middleware(SessionMiddleware,secret_key="your-secret-key") @app.post("/set/") async def set_session(request:Request): request.session["username"]='smith' return {"message":"Session value"} @app.get("/get/") async def get_session(request:Request): username=request.session.get("username","Guest") return {"username":username}
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
연동된 강의안과 수업에서 하는 강의안이 달라요
인강에서 보여주는 강의안과 드라이브에서 받아보는 강의안에 다른데.. 갱신된 강의안은 어디서 얻을 수 있나요?
-
미해결FastAPI 완벽 가이드
동영상 재생 오류
FastAPI Response > JSONResponse 다루기 관련한 동영상이 검은창으로 음성만 재생됩니다. 확인 부탁 드립니다. ( 해당 강의 이후에 다 그렇게 나옵니다. - mac m1, 크롬/사파리 브라우져 사용시) 저번주에는 앱에서 저장 및 재생 기능이 안되더니 이번주에는 pc에서 안되네요 ㅜㅜ (다른 동영상은 재생이 잘 되는데 여기 동영상만 그런것 같기도 해요)
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
mySQL과 fastAPI가 연동이 안됨
mysql 과 mysql workbench를 설치하고 접속하려는데 안돼서 고생하고 있습니다.코드는 아래와 같고'code'from fastapi import FastAPI, Dependsfrom sqlalchemy.orm import Sessionfrom sqlalchemy import Column, Integer, String, create_enginefrom sqlalchemy.ext.declarative import declarative_basefrom pydantic import BaseModelDATABASE_URL = "mysql+pymysql://newjeans:@gaius2127@localhost:3306/db_name"engine = create_engine(DATABASE_URL)Base = declarative_base()class User(Base): __tablename__ = 'users' id = Column(Integer, primary_key=True, index=True) username = Column(String(50), unique=True, index=True) email = Column(String(120))class UserCreate(BaseModel): username: str email: strdef get_db(): db = Session(bind=engine) try: yield db finally: db.close()Base.metadata.create_all(bind=engine)app = FastAPI()@app.get("/")def read_root(): return {"message": "Now, tackle with mySQL"}@app.post("/users/")def create_user(user: UserCreate, db: Session = Depends(get_db)): new_user = User(username=user.username, email=user.email) db.add(new_user) db.commit() db.refresh(new_user) return {"id": new_user.id, "username": new_user.username, "email": new_user.email} 터미널에 메세지는 PS C:\wonnho\fastapi> python -m uvicorn main:app --reloadINFO: Will watch for changes in these directories: ['C:\\wonnho\\fastapi']INFO: Uvicorn running on http://127.0.0.1:8000 (Press CTRL+C to quit)INFO: Started reloader process [20636] using StatReloadProcess SpawnProcess-1:Traceback (most recent call last): File "C:\Python312\Lib\site-packages\pymysql\connections.py", line 644, in connect sock = socket.create_connection( ^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python312\Lib\socket.py", line 828, in create_connection for res in getaddrinfo(host, port, 0, SOCK_STREAM): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ File "C:\Python312\Lib\socket.py", line 963, in getaddrinfo for res in _socket.getaddrinfo(host, port, family, type, proto, flags): ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^socket.gaierror: [Errno 11003] getaddrinfo failedDuring handling of the above exception, another exception occurred:Traceback (most recent call last): File "C:\Python312\Lib\site-packages\sqlalchemy\engine\base.py", line 3280, in wrappool_connect return fn() ^^^^ 중간 생략..... File "C:\Python312\Lib\site-packages\pymysql\connections.py", line 358, in init self.connect() File "C:\Python312\Lib\site-packages\pymysql\connections.py", line 711, in connect raise excsqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (2003, "Can't connect to MySQL server on 'gaius2127@localhost' ([Errno 11003] getaddrinfo failed)")(Background on this error at: https://sqlalche.me/e/14/e3q8)아이디와 패스워드가 문제인거 같은데 뭐가 문제인지 모르겠네요. 륀튼에게 물어보고 제미나이도 물어봤는데 해결이 안되어 힌트라도 얻을려고 질문합니다.위에 newjeans라는 아이디가 있음.
-
미해결파이썬 API 마스터! FastAPI
강의 소스 코드
안녕하세요 강의 잘 듣고 있는데요~소스코드 자료 부탁드려도 될까요?runiarang21@naver.com여기로 부탁드리겠습니다. 감사합니다.
-
해결됨파이썬 API 마스터! FastAPI
강사님의 강의 소스코드
강의자료가 pdf외에 보이지 않습니다.강사님이 수업하면서 작성하신 완성 소스코드를 받고싶은데 어디서 받을 수 있을까요?
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
pydantic 2.8.2를 사용하고 있습니다
강사님 설명 열심히 듣고 있는 수강생입니다.예제를 따라 하다 보니 제 환경에서는 안되는 부분이 있어서 확인해보았습니다.저는 pydantic 2.8.2를 사용하고 있더군요pydantic 2.8.2에서는 dict() 메소드가 더 이상 사용되지 않으며 대신 model_dump()를 사용 한다고 합니다from fastapi import FastAPI from pydantic import BaseModel app = FastAPI() class Item(BaseModel): # Pydantic 모델 정의 name: str price: float is_offer: bool = None @app.post("/items/") def create_item(item: Item): #return {"item": item.dict()} # Pydantic v2.x부터 dict()->model_dump()로 변경 return {"item": item.model_dump()} # Pydantic 모델을 API에 사용 사용버전에 따라 다른 것 같아서 혹시나 올려봅니다
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
AsyncSession 질문입니다.
섹션 17. 2번째 강의에서 "signup(회원가입), login(로그인), create_memo(메모 생성)" 함수에만 db를 AsyncSession으로 사용하고,비동기 처리가 포함된 다른 함수인 "list_memos(메모 조회), update_memo(메모 수정), delete_memo(메모 삭제)" 함수에는 db를 Session으로 사용하는 것 같은데 이유가 있을까요??
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
uvicorn main:app --reload 실행 불가
강의 준비를 위한 FastAPI 개발환경 설정 uvicorn main:app --reload이 명령어를 입력하면 아래의 에러가 나는데요. python -m uvicorn main:app --reload이 명령어로 서버 실행을 하고 있는데 상관 없을지요. PATH 변수 수정을 했지만 계속 아래의 에러가 나네요. uvicorn : 'uvicorn' 용어가 cmdlet, 함수, 스크립트 파일 또는 실행할 수 있는 프로그램 이름으로 인식되지 않습니다. 이름이 정확한지 확인하고 경로가 포함된 경우 경로가 올바른지 검증한 다음 다시 시도하십시오.위치 줄:1 문자:1+ uvicorn main:app --reload+ ~~~~~~~ + CategoryInfo : ObjectNotFound: (uvicorn:String) [], CommandNotFoundException + FullyQualifiedErrorId : CommandNotFoundException
-
해결됨파이썬 API 마스터! FastAPI
깃허브 레포지토리로 버전관리하기
안녕하세요. 덕분에 fastapi를 쉽게 배우는 중입니다. ㅎㅎ다름아니라 깃허브 레포 생성해서 올리고 싶은데요. fastapi 개발환경이 익숙치 않아서 문제를 겪고 있습니다. (예를들면 git status하니깐 pip로 설치한 라이브러리가 모두 뜬다던지.. 등등입니다. )혹시 간단하게나마로 여기에 깃허브에 올리는 순서를 적어주실수 있으신가요??예를들어)1.어디 폴더위치에 들어간다.2.여기서 무엇을 한다. 리모트 등등3.git push origin feature한다.
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
PDF파일 다운로드는 어디서 할 수 있나요?
소스코드는 다운로드 받았습니다만, 본 영상초반에 설명하시는 다른 자료는 어디서 확인가능한지 문의 드립니다.
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
html 오류
공유하신 파일로 업데이트 했으나 역시나 문제 해결이 안됩니다. 그리고 html 파일을 열었는데 저렇게 나오는데... 여기서 무슨 문제가 있는게 아닐까요? "Property assignment expected javascript." 자바스크립트도 문제인거 같은데... 답변 부탁드립니다. 참고로 다른건 저는 그냥 html 인데, 잔재미님은 django html 로 되어있습니다....
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
pip install 해야할 목록을 알고 싶습니다.
강의를 다 듣고 코드를 실행하는데 실행이 되지 않아 pip install 해야할 목록을 알고 싶습니다.
-
미해결처음하는 파이썬 백엔드 FastAPI 입문 (FastAPI부터 비동기 SQLAlchemy까지) [풀스택 Part1-2]
memos.html err
안녕하세요 html 에러가 발생했는데, 모듈이 안깔려서 그런가요? 왜 이런 현상이 일어 날까요?