inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

db connect

미해결

FastAPI 완벽 가이드

안녕하세요! 강사님! 처음으로 fastAPI를 접하는데 강사님 수업을 통해 배움을 얻어 가게되어 우선 감사 말씀드립니다. DB Connect 세팅 시 create_engine 함수를 이용하여 엔진 객체만 생성하여 DB에 연결을 하는데 다른 참고 자료들과 비교하면 모델 클래스 생성은 ORM을 사용하지 않으니 생성을 할필요가 없을테고, sessionmaker 함수를 통한 세션 클래스는 따로 생성하지 않더군요. 혹시 sessionmake를 통해 생성된 세션 클래스의 역할과 지금 강의에서는 사용하지 않은 이유를 알 수 있을까요?

  • python
  • sql
  • sqlalchemy
  • FastAPI
하늘111 댓글 2 좋아요 0 조회수 152

서버, 클라이언트 데이터 중복 호출 문제

미해결

Next + React Query로 SNS 서비스 만들기

강의와 같이 구현한다면 page.tsx 에서 데이터 fetch PostRecommends.tsx 에서 는 다시 데이터를 fetch 하지 않고 HydrationBoundary를 통해 넘어온 데이터를 사용 이렇게 page.tsx 에서만 데이터가 fetch 되어야 맞는거지요 ? 제가 구현한 소스코드에서는 getPostRecommends 쪽에 로그를 찍어서 확인해보니 page.tsx 에서도 한번 호출하고 PostRecommends.tsx 에서도 한번 호출해서 총 2번 로그가 찍히더라구요. 이론대로라면 page.tsx 에서 1번 호출했을 때만 로그가 찍혀야 하는 것이 맞는거죠? 아 강의는 " 클라이언트 react-query" 입니다.

  • react
  • next.js
  • react-query
  • next-auth
  • msw
shan 댓글 2 좋아요 0 조회수 158

orm relationship 정의 중 해당 에러 발생 시 어떻게 고쳐야 하는걸까요

미해결

실전! FastAPI 입문

sqlalchemy.exc.InvalidRequestError: When initializing mapper Mapper[ScheduleEntity(schedules)], expression 'CountryEntity' failed to locate a name ('CountryEntity'). If this is a class name, consider adding this relationship() to the <class 'src.models.schedule.ScheduleEntity'> class after both dependent classes have been defined. cities = relationship("src.models.city.CityEntity", back_populates="country", cascade="all, delete-orphan", lazy="joined") schedules = relationship("src.models.schedule.ScheduleEntity", back_populates="country", cascade="all, delete-orphan", lazy="joined") 이미 이렇게 다 해놨는데 말이죠...

  • python
  • 리팩토링
  • orm
  • FastAPI
  • pytest
윤서준 댓글 3 좋아요 0 조회수 254

(기출) 2024년 2회 기출문제 수업자료가 강의랑 안맞아요

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

섹션7 (기출) 2024년 2회 기출문제 - 이론 포함 강의내용 0:53:26 자료 12페이지 람다 예제 1 만 있어요 예제 2가 없어요

  • python
  • java
  • c
  • 정보처리기사
마이동 댓글 2 좋아요 1 조회수 148

사용 기기 관련해서 질문 드립니다.

미해결

아바타 커뮤니티앱 만들기 (React Native Expo)

eas와 notification 설정 후에는 로그인 시에 android emulator 상에서 코딩해주신 대로 '실제기기를 사용해주세요' 문구가 나옵니다. ios 는 개발자모드 설정을 구매해야 한다고 해서 기기는 안드로이드로 진행하려고 하는데 android 기기가 따로 없고 emulator 로는 실행이 안되는 걸까요? expopushToken만 보내고 로그인이 되지는 않습니다.

  • javascript
  • react
  • react-native
  • typescript
  • react-query
host0806 댓글 3 좋아요 0 조회수 179

풀라우트캐시 3강. book/4를 URL로 요청시 렌더링 과정

해결됨

한 입 크기로 잘라먹는 Next.js

안녕하세요 선생님, 질문이 있어서 남깁니다. 만약 book/4를 URL로 요청하면 과정이 URL로 book/4 요청 시 Link 등이 없으므로 프리페칭은 안됨 - 서버에서 JS 실행 (렌더링) - 렌더링 된 HTML 브라우저에 넘김 - 브라우저에서 화면에 렌더링 - 서버에서 JSBundel, RSC payload 브라우저에 넘김 - 수화과정 - 상호작용 가능 이게 맞나요? book/1~3은 staticPage로 풀라우트캐시되어있으니 URL로 요청하면 풀라우트캐시에서 바로 HIT해서 주는거고요?

  • react
  • typescript
  • next.js
dudptl0220 댓글 2 좋아요 0 조회수 186

Editor 컴포넌트는 리렌더링되는 것은 맞나요?

해결됨

한 입 크기로 잘라 먹는 리액트(React.js) : 기초부터 실전까지

강의내용에 보면 todos가 변경될 때 Editor는 변경이 않되야하는 것 같은데 리렌터링이 됩니다. 소스는 같은데 머가문제인지 알 수있을까요? <Editor.jsx> const Editor = () => { const { onCreate } = useContext(TodoDispatchContext); const [content, setContent] = useState(""); const contentRef = useRef(); const onChangeInput = (e) => { setContent(e.target.value); }; const onKeyDown = (e) => { if (e.keyCode === 13) { onSubmit(); } }; const onSubmit = () => { if (content === "") { contentRef.current.focus(); return; } onCreate(content); setContent(""); }; return ( <div className="Editor"> <input ref={contentRef} value={content} onKeyDown={onKeyDown} onChange={onChangeInput} placeholder="새로운 Todo..." /> <button onClick={onSubmit}>추가</button> </div> ); }; export default Editor; <App.jsx> import "./App.css"; import Header from "./components/Header"; import Editor from "./components/Editor"; import List from "./components/List"; import { useState, useRef, useReducer, useMemo, useCallback, createContext, } from "react"; const mockData = [ { id: 0, isDone: false, content: "React 공부하기", date: new Date().toLocaleDateString(), }, { id: 1, isDone: false, content: "빨래하기기", date: new Date().toLocaleDateString(), }, { id: 2, isDone: false, content: "청소하기", date: new Date().toLocaleDateString(), }, ]; const reducer = (state, action) => { switch (action.type) { case "CREATE": return [action.data, ...state]; case "UPDATE": return state.map((todo) => todo.id === action.data.id ? { ...todo, isDone: !todo.isDone } : todo ); case "DELETE": return state.filter((todo) => todo.id !== action.data.id); default: return state; } }; export const TodoStateContext = createContext(); export const TodoDispatchContext = createContext(); function App() { const [todos, dispatch] = useReducer(reducer, mockData); const idRef = useRef(3); const onCreate = useCallback((content) => { dispatch({ type: "CREATE", data: { id: idRef.current++, isDone: false, content: content, date: new Date().getTime(), }, }); }, []); const onUpdate = useCallback((targetId) => { dispatch({ type: "UPDATE", data: { id: targetId } }); }, []); const onDelete = useCallback((targetId) => { dispatch({ type: "DELETE", data: { id: targetId } }); }, []); const memoizedDispatch = useMemo(() => { return { onCreate, onUpdate, onDelete }; }, []); return ( <div className="App"> <Header /> <TodoStateContext.Provider value={{ todos }}> <TodoDispatchContext.Provider value={memoizedDispatch}> <Editor /> <List /> </TodoDispatchContext.Provider> </TodoStateContext.Provider> </div> ); } export default App;

  • javascript
  • react
  • node.js
Park Ju Yeong 댓글 2 좋아요 0 조회수 188

CV error

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

CV를 사용하였는데 하기와 같은 오류가 등장했습니다 : --> 98 raise InvalidParameterError( 99 f"The {param_name!r} parameter of {caller_name} must be" 100 f" {constraints_str}. Got {param_val!r} instead." InvalidParameterError: The 'scoring' parameter of cross_val_score must be a str among {'f1', 'jaccard_micro', 'positive_likelihood_ratio', 'adjusted_rand_score', 'jaccard_weighted', 'homogeneity_score', 'average_precision', 'precision_weighted', 'rand_score', 'roc_auc_ovr', 'roc_auc_ovr_weighted', 'precision', 'explained_variance', 'jaccard_macro', 'recall_macro', 'f1_macro', 'normalized_mutual_info_score', 'precision_samples', 'neg_root_mean_squared_log_error', 'r2', 'neg_negative_likelihood_ratio', 'precision_micro', 'neg_max_error', 'mutual_info_score', 'precision_macro', 'f1_micro', 'v_measure_score', 'completeness_score', 'neg_mean_squared_error', 'accuracy', 'neg_brier_score', 'recall_samples', 'jaccard_samples', 'neg_root_mean_squared_error', 'neg_mean_absolute_percentage_error', 'jaccard', 'f1_samples', 'matthews_corrcoef', 'neg_median_absolute_error', 'neg_mean_gamma_deviance', 'recall_micro', 'neg_mean_absolute_error', 'neg_log_loss', 'roc_auc_ovo_weighted', 'd2_absolute_error_score', 'roc_auc', 'adjusted_mutual_info_score', 'recall', 'recall_weighted', 'balanced_accuracy', 'f1_weighted', 'top_k_accuracy', 'roc_auc_ovo', 'neg_mean_squared_log_error', 'fowlkes_mallows_score', 'neg_mean_poisson_deviance'}, a callable or None. Got 'f1-macro' instead. 제가 작성한 코드도 함께 공유 드립니다 : import pandas as pd train=pd.read_csv('train.csv') test=pd.read_csv('test.csv') train=train.drop('ID', axis=1) test_id=test.pop('ID') print(train.shape, test.shape) print(train.head()) print(test.head()) print(train.info()) print(test.info()) print(train.isnull().sum()) print(test.isnull().sum()) y=train.pop('Segmentation') print(y.info(), y.shape) y=y-1 int_cols=train.select_dtypes(exclude='object').columns train[int_cols].corr() cat_cols=train.select_dtypes(include='object').columns print(train[cat_cols].describe(include='object')) print(test[cat_cols].describe(include='object')) for i in cat_cols: train[i]=train[i].astype('object') test[i]=test[i].astype('object') for i in cat_cols: print(train[i].value_counts()) print(test[i].value_counts()) from sklearn.preprocessing import RobustScaler scaler=RobustScaler() for i in int_cols : train[i]=scaler.fit_transform(train[[i]]) test[i]=scaler.transform(test[[i]]) from sklearn.preprocessing import LabelEncoder le=LabelEncoder() for i in cat_cols: train[i]=le.fit_transform(train[i]) test[i]=le.transform(test[i]) print(train.head()) print(test.head()) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val=train_test_split(train, y, test_size=0.2, random_state=2025) print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) from sklearn.ensemble import RandomForestClassifier rf=RandomForestClassifier(n_estimators=50, max_depth=7, random_state=2025) rf.fit(X_tr, y_tr) y_pred_rf=rf.predict(X_val) from lightgbm import LGBMClassifier lgbm=LGBMClassifier(random_state=2025) lgbm.fit(X_tr, y_tr) y_pred_lgbm=lgbm.predict(X_val) from xgboost import XGBClassifier xgb=XGBClassifier(random_state=2025) xgb.fit(X_tr, y_tr) y_pred_xgb=xgb.predict(X_val) y_pred_xgb=y_pred_xgb+1 from sklearn.metrics import f1_score print(f1_score(y_val, y_pred_rf, average='macro')) print(f1_score(y_val, y_pred_lgbm, average='macro')) print(f1_score(y_val, y_pred_xgb, average='macro')) from sklearn.model_selection import cross_val_score scores=cross_val_score(rf, train, target, scoring='f1-macro', cv=5) print(scores) print(scores.mean())

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
yaejin1016 댓글 2 좋아요 0 조회수 94

XGBClassifier 사용 에러

해결됨

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

XGBClassifier 를 사용해서 target을 분류하려고 하는데, 아래와 같은 에러가 나타납니다 : ValueError : Invalid classes inferred from unique values of y . Expected: [0 1 2 3], got [1 2 3 4] LabelEncoder를 사용해서 processing 도 다 했고, LGBMClassifier랑 RandomForestClassifier는 다 잘 돌아가는데 XGBClassifier만 저런 오류가 나타나네요;;; 참고를 위해 지금까지 작성한 코드 하기로 공유 드립니다 : import pandas as pd train=pd.read_csv('train.csv') test=pd.read_csv('test.csv') train=train.drop('ID', axis=1) test_id=test.pop('ID') print(train.shape, test.shape) print(train.head()) print(test.head()) print(train.info()) print(test.info()) print(train.isnull().sum()) print(test.isnull().sum()) y=train.pop('Segmentation') y=y.astype('object') y=y.astype('category') print(y.info(), y.shape) int_cols=train.select_dtypes(exclude='object').columns train[int_cols].corr() cat_cols=train.select_dtypes(include='object').columns print(train[cat_cols].describe(include='object')) print(test[cat_cols].describe(include='object')) for i in cat_cols: train[i]=train[i].astype('object') test[i]=test[i].astype('object') for i in cat_cols: print(train[i].value_counts()) print(test[i].value_counts()) from sklearn.preprocessing import RobustScaler scaler=RobustScaler() for i in int_cols : train[i]=scaler.fit_transform(train[[i]]) test[i]=scaler.transform(test[[i]]) from sklearn.preprocessing import LabelEncoder le=LabelEncoder() for i in cat_cols: train[i]=le.fit_transform(train[i]) test[i]=le.transform(test[i]) print(train.head()) print(test.head()) from sklearn.model_selection import train_test_split X_tr, X_val, y_tr, y_val=train_test_split(train, y, test_size=0.2, random_state=2025) print(X_tr.shape, X_val.shape, y_tr.shape, y_val.shape) y_val=y_val.astype('category') y_tr=y_tr.astype('category') from sklearn.ensemble import RandomForestClassifier rf=RandomForestClassifier(n_estimators=100, max_depth=5, random_state=2025) rf.fit(X_tr, y_tr) y_pred_rf=rf.predict(X_val) from lightgbm import LGBMClassifier lgbm=LGBMClassifier() lgbm.fit(X_tr, y_tr) y_pred_lgbm=lgbm.predict(X_val) from sklearn.metrics import f1_score print(f1_score(y_val, y_pred_rf, average='weighted')) print(f1_score(y_val, y_pred_lgbm, average='weighted')) from xgboost import XGBClassifier xgb=XGBClassifier() xgb.fit(X_tr, y_tr) y_pred_xgb=xgb.predict(X_val)

  • python
  • 머신러닝
  • 빅데이터
  • pandas
  • 빅데이터분석기사
yaejin1016 댓글 3 좋아요 0 조회수 201

소스코드관련해서

해결됨

React, Node.js, MongoDB로 만드는 나만의 회사 웹사이트: 완벽 가이드

매강좌마다 깃허브 링크가있던데요 매강마다 소스코드를 일일히 다운받아야하나요??? 아니면 한번에 다운받아도되는걸 제가 착각하고있는건가요??? 강의가 진행되어질수록 그만큼 코드변경된흐름을 깃허브 트리로 펼쳐놓으신것같은데.... 하나만받아도되는건지 매강마다 깃허브가서 소스코드를 매강마다 다운받아야하는건지 궁금합니다.

  • HTML/CSS
  • javascript
  • react
  • node.js
  • mongodb
hdr.ecssh 댓글 1 좋아요 0 조회수 131

변수 앞 _ 하나를 사용할때

미해결

모두를 위한 파이썬 : 필수 문법 배우기 Feat. 오픈소스 패키지 배포 (Inflearn Original)

_ 를 변수에 사용하는데 있어 질문이 있습니다. 'Property(1) - Underscore' 강의에서 _가 하나를 사용할때는 PROTECTED 변수로, 상속받는 하위 클래스에 이용한다고 하셨습니다. 강사님의 다른 Python 강의에서 (정확히 어느 강의 인지는 기억이 안나네요) 가 붙은 변수를 클래스 변수로 사용하셨거든요. 혹시 두 의미가 상충되는것일까요 아니면 를 하나 사용할때는 두가지 경우 모두 사용가능할까요?

  • python
가보자고 댓글 2 좋아요 0 조회수 169

ch6번 첨부파일 질문있습니다.

미해결

코드로 배우는 React 19 with 스프링부트 API서버

문제상황: ch6 마지막 파일 다운 받은 후 npm i react react-dom 하고 npm start 했습니다. product와 todo를 누르면 아래와 같은 상황이 나옵니다. 혹시 첨부 파일이 잘못된거 아닐까요? ERROR Cannot read properties of undefined (reading 'map') TypeError: Cannot read properties of undefined (reading 'map') at ListComponent

  • react
  • spring-boot
  • jpa
  • jwt
  • redux-toolkit
zzzzz 댓글 2 좋아요 0 조회수 97

33분 if문 질문 있습니다!

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

코드에서 i=5일 때, j=7일 때 if 조건문을 만족 시키는 것은 이해했습니다. i++, j++로 숫자가 동일하게 증가하는데, 그러면 i는 j보다 먼저 if문을 만족 시키므로 i++이 실행되지 않고, j만 실행되는 것으로 이해하면 될까요?

  • python
  • java
  • c
  • 정보처리기사
isu 댓글 2 좋아요 0 조회수 143

강의자료는 어떻게 다운 받나요?

해결됨

클릭만으로 웹페이지 만들기 - 한국인이 좋아하는 속도로 때려넣는 워드프레스

docker-compose.yaml 파일은 어디에 있나요?

  • wordpress
이재곤 댓글 2 좋아요 0 조회수 151

쿠팡 BeautifullSoup 헤더넣어도 막히네요

미해결

실습으로 끝장내는 웹 크롤링과 웹 페이지 자동화 & 실전 활용

headers = { 'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36', "accept-language": "ko,en-US;q=0.9,en;q=0.8", "accept-encoding" : "gzip, deflate, br, zstd", "cache-control" : "max-age=0" } 위와 같이 헤더를 넣어도.... 타임아웃으로 나오지 않더라구요 이제는 헤더만으로는 못할 거 같은데 셀레니움 외 방법이 없을까요 ㅠㅠ

  • python
  • 웹-크롤링
  • selenium
  • beautifulsoup
sakuraibbo 댓글 1 좋아요 0 조회수 468

제발 코드샌드박스 링크 좀 달아주세요....

미해결

실무 중심! FE 입문자를 위한 React

제목 그대로입니다. 코드샌드박스 링크좀 어딘가에 달아주시든지, 자료파일에 좀 첨부해주시든지, 어떻게 좀 해주세요. 화면 스톱 해놓고 일일이 주소창 쳐서 들어가고 있어요. 너무 불편해요! 질문답변 게시판에 링크 달아놓은거 없는지 검색도 해봤는데 전혀 엉뚱한 대답만 있는 것 같고..

  • react
  • redux
  • node.js
  • sass
  • swr
kimhi 댓글 2 좋아요 2 조회수 548

수강기간 무료!?

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

ㅎㄷㅆ이랑 여기랑 일주일 이상 고민하다가 여기를 고르게 되었습니다 혹시 수강기간 무료라고 되있는데 만약 떨어지면 강의 새로 업데이트 된 것으로 볼수 있는건가요? 우선 1회만에 붙겠다는 생각으로 열심히 공부해보겠습니다!

  • python
  • java
  • c
  • 정보처리기사
박현서 댓글 1 좋아요 0 조회수 269

pydantic

해결됨

FastAPI 완벽 가이드

안녕하세요. 강의에서 사용한 pydantic은 V2인게 맞는 걸까요??

  • python
  • sql
  • sqlalchemy
  • FastAPI
Full Stack 개발자 댓글 2 좋아요 0 조회수 145

인기 태그

인프런 TOP Writers

주간 인기글