update 코드를 @app.patch("/todos/{todo_id}", status_code=status.HTTP_200_OK) def update_todo_handler( todo_id: int, is_done: bool = Body(..., embed=True), session: Session = Depends(get_db), ): todo: ToDo | None = get_todo_by_todo_id(session=session, todo_id=todo_id) if todo: todo.done() if is_done is True else todo.undone() todo: ToDo = update_todo(session=session, todo=todo) return ToDoSchema.from_orm(todo) return HTTPException(status_code=404, detail="Todo not found") 위와 같이 작성하고 난뒤에 , 테스트 코드 200 을 제외한 우선 404 기준으로만 작성했을때 # 404 mocker.patch("main.get_todo_by_todo_id", return_value=None) response = client.patch("/todos/1", json={"is_done": True}) assert response.json()['status_code'] == 404 assert response.json()['detail'] == "Todo not found" 다음과 같이 작성했을때 통과가 됐습니다. 하지만 위의 작성된 코드는 영상과 다른 코드입니다. 저렇게 정확히 키값을 설정을 해줘야만 통과가 되더라구요. 제가 어디를 놓치고 있는걸까요 ?
안녕하세요! 궁금한 점이 있어서 질문 드립니다. 2-H 문제 해설에서 s[i]를 int형으로 반환해서 풀이하시던데 혹시 특별한 이유가 있을까요?? 저는 s[i]를 그냥 char형으로 풀었습니다. http://boj.kr/9de33b348bcb40ee958c4cfbc845c305
안녕하세요, 우선 좋은 강의 정말 감사드립니다! 나도코딩님 유튜브로 파이썬 강의 듣다가 개발자에 꿈이 생겨 현재 부트캠프에서 백엔드를 배우고 있습니다. 강의를 듣던 중 궁금한 점이 생겨 여쭤보려고 합니다. 스트림 챕터에서 리스트로 저장할 때 .collect를 사용해서 만들 수 있다고 하셨는데 혼자 해보다가 collect가 생각이 나지 않아 collect를 사용하지 않고 바로 뒤에 .toList를 붙였는데도 정상 작동 하는 것 같습니다. collect를 썼을 때와 안 썼을 때의 차이가 있을까요? 또, list.stream().forEach(System.out::println) 를 스트림으로 안바꾸고 list.forEach(System.out::println) 로도 사용할 수 있는 이유가 있을까요?? //강의 내용 List<String> langListStartsWithC = langList.stream() .filter(x -> x.contains("c")) .map(String::toUpperCase) .collect(Collectors.toList()); langListStartsWithC.stream().forEach(System.out::println); //혼자 해본 코드 List<String> c = Arrays.stream(langs) .filter(x -> x.contains("c")) .map(String::toUpperCase).toList(); c.forEach(System.out::println); List<String> list = langList.stream() .filter(x -> x.contains("c")) .map(String::toUpperCase).toList(); list.stream().forEach(System.out::println); // list.forEach(System.out::println) 작동
안녕하세요 고박사님. 유튜브와 인프런을 통해 강의 잘 듣고 있습니다! 질문 드리고 싶은 부분은 "드래그 블록 배치 판정 및 배치" 강의에서 1분44초 즈음 // 현재 위치에 이미 다른 블록이 배치되어 있는지 ? if( !IsOtherBlockInThisBlock(position) ) return false; 저는 저 함수명을 보고 position에 해당하는 블록에 다른 블록이 존재한다면 true를 반환시키는 것으로 함수해석을 하였는데 강의를 되돌려보니 블록이 비어 있다면 true로 주석이 있는것을 확인하였습니다. 사소한 질문일 수 있지만 충분히 고민해보아도 이해가 잘 되지 않아 올바른 해석법이나 추가설명 부탁드리겠습니다..! 감사합니다.
Project Setting에서 Game Instance로 설정된 클래스는 게임이 시작될 때 생성되서 활용할 수 있는 것 같은데 Singleton을 따로 구현하지 않아도 Static한 것 처럼 접근하여 사용할 수 있나요? 또한, 실제 프로젝트를 진행할 때 Game의 전체적인 데이터를 관리하는 Instance를 만든다고 했을 때(일종의 Manager 역할) 언리얼에서 제공하는 기능을 사용하는 것이 좋나요? 아니면 제가 Singleton을 따로 구현해서 사용하는 것이 좋나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? 예 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? 예 3. 질문 잘하기 메뉴얼을 읽어보셨나요? 예 [질문 내용] 안녕하세요, 스프링 강의를 보다가 궁금한 게 생겨서 글 남겨요. 강의 중간 중간에 하위 폴더를 만들 때 패키지와 디렉토리를 사용해서 만드는데 이때, resource 폴더 안에서는 디렉토리만 뜨고 java 폴더 안에서는 패키지만 뜨던데 혹시 패키지와 디렉토리의 차이점을 알 수 있을까요?
안녕하세요 강의를 수강 중에 char*[]자료형에 대한 질문이 생겨 글을 남깁니다 제 컴파일러에서는 해당 방식으로 문자열을 저장하면 오류가 발생하는데, 이는 컴파일러 버전 때문인가요..? 앞에 const를 붙여야 정상적으로 초기화가 되는데, main의 파라미터로 쓰이는 char *argv[]는 오류가 발생하지 않아 문의드립니다.
consume lag 모니터링 툴로 prometheus + grafana는 어떻게 생각하시나 궁금합니다~! prometheus에서 슬라이딩 윈도우를 지원하는 것으로 아는데, 블로그를 보다 kafka jmx exporter를 prometheus jmx metrics를 봐서요!
웹 계층 개발챕터 강의를 진행하고 있는 수강생입니다. 문득 궁금한점이 생겨 질문 남기게되었습니다. 코드를 작성하고 서버를 재실행하면 기존에 db에 넣어둔 데이터가 다 날아가고 없어지는게 서비스로직에 달려있는 @Transactional 어노테이션 때문인가요? 테스트코드에서의 @Trasactional 어노테이션의 경우 테스트데이터의 경우 테스트만 진행하고 테스트된 데이터는 db에 반영을 하지 않기위해서(Rollback) 사용한다고 알고있습니다. 그래서 원래 코드에서도 반영이 되지않는 이유가 서비스로직에 포함된 트랜잭션 어노테이션 때문인지 궁금하여 질문드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. http://boj.kr/8d7c38a0a361454191ef6df051497ac7 이 코드는 왜 안되는지 잘 모르겠습니다 ㅠㅠㅠ