묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결Practical Testing: 실용적인 테스트 가이드
TEST 코드 내에서 발생하는 쿼리의 바인딩 되는 부분을 볼 수 있나요?
안녕하세요. 강의를 듣다가 테스트를 하며 JPA에서 제공하는 쿼리가 제가 원하는 쿼리가 맞는지 확인함과 더불어 실제 들어가는 값이 제대로 들어가는지 알고 싶을 때가 존재하는데 이때 로그에서 확인할 수 있는 방법이 있을까요?
-
해결됨파이썬을 활용한 머신러닝 딥러닝 입문
LeNet-5 실습 중 loss값 nan이 나오고 있습니다.
강의와 동일하게 코드를 쳐서 진행한 것 같은데 loss값 자체가 nan이 나오고 accuracy는 0.1을 넘기지 못하는 중입니다. 왜 이렇게 나오는 건지 알려주실 수 있을까요?
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
리뷰 작성 페이지 강의는 언제쯤 나올까요?
안녕하세요?항상 좋은 강의 감사하게 생각하고 있습니다.마지막 강의에 보니 추가 강의 "리뷰 작성 페이지"가 나온다고 했는데, 언제쯤 볼 수 있을까요?
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
언제 PathVariable을 사용해야하고 언제 RequestParam을 써야하나요?
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.상품 수정 강의를 수강하다가 0분 30초경에 editForm메서드를 만드실때PathVariable 어노테이션을 써야한다고 말씀하시는데 메소드마다 PathVariable을 쓰거나,RequestParam을쓰거나, ModelAttribute를 쓰는 기준점이 궁금합니다
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
스토쿠 검사
이렇게 풀어도 정답 다 통과되던데 반례가 있을까요 ?import sys import string as t sys.stdin = open("input.txt", "r") a = [list(map(int, input().split())) for _ in range(9)] True_flag = True nums = [i for i in range(1, 10)] for y in range(0, 9, 3): for x in range(0, 9, 3): res = [] res.extend(a[y : y + 3][0][x : x + 3]) res.extend(a[y : y + 3][1][x : x + 3]) res.extend(a[y : y + 3][2][x : x + 3]) if len(nums) != len(set(res)): True_flag = False break if True_flag: print("YES") else: print("NO")
-
미해결처음하는 플러터(Flutter) 기초부터 실전까지 [풀스택 Part4] (쉽고 견고하게 단계별로 다양한 프로젝트까지)
제공된 코드들을 실행시키면 sdk파일을 받으라고 뜨는데
안녕하세요 제가 초보라 초보적인 질문일 수 있습니다.제공해주신 코드들을 열어보면 위에 이런식으로 뜨는데,저는 제가작성해서 실행시키는건 문제없는데 제공된것 포험 다른곳에서 다ㅏ운받아와서 열어보면 sdk를 자꾸 설치하라고 뜨는데(위 사진과 같이) 이 sdk를 링크를 통해 다운받아줘야하나요..? 전 이미 sdk가 있는상태이니까 잘 실행시키고 있을텐데 다른 파일불러오면 다운받으라고 뜨니까 궁금해서 여쭤봅니다
-
해결됨스프링 웹 MVC
2:51초 질문입니다.
SampleController 클래스에 @Validated 어노테이션을 추가하였고, Event 클래스에서 name에 @NotBlank와 limit에 @Min(value = 0)을 추가하였습니다. 코드는 다음과 같습니다.Event.classpackage com.springMvc.N04_handlerMethod; import javax.validation.constraints.Min; import javax.validation.constraints.NotBlank; public class Event { private Integer id; @NotBlank private String name; @Min(value = 0) private Integer limit; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getLimit() { return limit; } public void setLimit(Integer limit) { this.limit = limit; } } SampleController.classpackage com.springMvc.N04_handlerMethod; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.validation.Valid; @Controller public class SampleController { @GetMapping("/events/{id}") @ResponseBody public Event getEvent1(@PathVariable Integer id){ Event event=new Event(); event.setId(id); return event; } @GetMapping("/events/form") public String eventsForm(Model model){ Event newEvent=new Event(); newEvent.setName("action"); newEvent.setLimit(30); model.addAttribute("event", new Event()); return "/events/form"; } @PostMapping("/events") public String getEvent(@Validated @ModelAttribute Event event, BindingResult bindingResult) { if (bindingResult.hasErrors()) { return "/events/form"; } return "/events/list"; } }SampleControllerTest.classpackage com.springMvc.N04_handlerMethod; import org.junit.jupiter.api.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.autoconfigure.web.servlet.WebMvcTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.web.servlet.MockMvc; import static org.junit.jupiter.api.Assertions.*; import static org.springframework.test.web.servlet.request.MockMvcRequestBuilders.*; import static org.springframework.test.web.servlet.result.MockMvcResultHandlers.*; import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.*; @RunWith(SpringRunner.class) @WebMvcTest class SampleControllerTest { @Autowired MockMvc mockMvc; @Test public void postEvent() throws Exception { mockMvc.perform(post("/events") .param("name", "krille") .param("limit", "-1")) .andDo(print()) .andExpect(status().isOk()) .andExpect(model().hasErrors()); } }Event.class에서 설정한 validation과 SampleController.class의 getEvent() 메소드의 @Validated, BingingResult에 따르면 test에서 입력된 param값에 따라 limit가 음수로 나오면 model().hasError()로 인해 테스트가 통과가 되어야 할텐데 java.lang.AssertionError: Expected binding/validation errors가 나오면서 계속 테스트가 통과되지 않습니다. 오류를 해결하기 위해 구글링, chatGPT를 검색해보았지만 결국 해결하지 못해 이렇게 질문하였습니다.사용한 스프링 프레임워크 부트는 3.1.2 버전입니다. 추가로 지금까지 수업을 들으며 다른 질문도 하려고 합니다.1. Test 작성시 mockMvc.perform()을 사용할 때 마다 자동으로 import를 하고 싶은데 어떤 키를 눌러야 하나요?2. junit이 start.spring.io에서 제공하지 않나요? @RunWith(SpringRunner.class) 어노테이션을 작성할 때마다 수동으로 junit 의존성을 추가합니다.3. 개인적인 질문인데 코딩을 하다가 계속 막히면 화가 너무나서 감정 컨트롤이 너무 힘든데 강사님은 어떻게 감정을 다스리는지 궁금합니다.
-
해결됨처음 배우는 리액트 네이티브
터미널 다운 및 사용방법
안녕하세요 처음 프로젝트를 만들고 싶어 강의를 수강하게 된 학생입니다. 혹시 강의 초반에 JDK같은 여러 설치 파일들을 AltchemistK라는 터미널로 설치하시던데 이 터미널을 어디서 다운받아 사용하는지 몰라서 질문드립니다.
-
해결됨그림으로 배우는 쿠버네티스(v1.30) - {{ x86-64, arm64 }}
테스트환경(VM) 쉽게 On/Off 할수 있는 방법이 있나요?
쉽게 시작하는 쿠버네티스를 완강하고 그림으로 배우는 쿠버네티스를 수강하고 있습니다.요번 사이버 먼데이에 cka 할인 쿠폰이 나오면 cka 도전을 위해 열공 중입니다. 매번 강의 내용 실습을 위해 VM을 On/Off 하고있는데 엔지니어 특성상 이것도 귀찮네요.vagrant halt 를 이용하여 한번에 vm을 Off 하는 방법을 찾았는데 한번에 On 하는 방법은 이리저리 해도 안되더라구요. vagrant up을 다시 하면 프로비저닝을 다시 하려고 해서 시간도 많이 걸리는 것도 같아서요. 그래서 찾은 방법을 공유 드립니다.아래 내용을 배치 파일로 vmon.bat, vmoff.bat 생성후 실행해주는 방법을 찾았습니다.버츄얼 박스도 따로 실행할 필요없이 실행되서 깔끔하네요. VM ON"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" startvm "m-k8s-1.22(github_SysNet4Admin)" --type headless"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" startvm "w1-k8s-1.22(github_SysNet4Admin)" --type headless"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" startvm "w2-k8s-1.22(github_SysNet4Admin)" --type headless"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" startvm "w3-k8s-1.22(github_SysNet4Admin)" --type headless VM OFF"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" controlvm "m-k8s-1.22(github_SysNet4Admin)" poweroff"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" controlvm "w1-k8s-1.22(github_SysNet4Admin)" poweroff"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" controlvm "w2-k8s-1.22(github_SysNet4Admin)" poweroff"C:\Program Files\Oracle\VirtualBox\vboxmanage.exe" controlvm "w3-k8s-1.22(github_SysNet4Admin)" poweroff 혹시 좀더 우아한 방법이 있으시면 알려주세요.
-
해결됨[개정3판] Node.js 교과서 - 기본부터 프로젝트 실습까지
12.4 room.find is not a function/room.create is not a function 이 출력됩니다.
몽구스 연결하고, 실행하면, 연결성공 메시지까지 뜨는데, 접속하면 room.find is not a function이 출력됩니다. const Room = require('../schemas/room")을 const {Room}이나 const {Room, roomSchema}로 바꾸는 걸 해봐도 해결되진 않습니다.제 생각으로는 schemas/room 과 controller의 index가 제대로 연결되지 않는것으로 보이는데 어떻게 접근하면 좋을까요?
-
미해결Slack 클론 코딩[실시간 채팅 with React]
프론트,백엔드도 https적용되었는데 morgan에는 HTTP통신으로 나옵니다. 쿠키 적용이안됩니다.
백엔드를 npm run start로 했을 시 로그인이 안되는 문제가 있습니다.프론트,백엔드 https적용되어있고 같은 도메인을 쓰고있습니다.app.js에 cookie.secure를 주석처리하면 로그인이 됩니다.질문드린 이유는 지금 제 프론트 <-> 백엔드가 https 통신이 아닌 것인지맞다면 왜 cookie.secure를 true로 했을 때 왜 쿠키가 설정이 안되는 것인지 알고싶습니다. -시도한 방법 -domain에 상위도메인 넣어보았는데도 안됩니다 ㅠ저와 비슷한 상황을 겪은 분의 질문을 보던 중 궁금한 게 있어서 이것도 적어봅니다.https://www.inflearn.com/questions/342672/express-aws-%EB%B0%B0%ED%8F%AC-%ED%9B%84-%EC%84%B8%EC%85%98-%EC%BF%A0%ED%82%A4여기서 cors는 어떻게 하란걸까요? -아래는 제 상황을 파악하시는데 도움이 될만한 내용을 적어봤습니다.- 아래는 프론트에서 login 요청시 morgan 로그입니다.프론트 url입니다 => https가 적용되어있습니다.아래는 백엔드 url을 인터넷주소창에 쳤을 때입니다.아래는 프론트에서 백엔드로 login 요청했을 때 요청헤더입니다. 아래는 백엔드서버 nginx 설정입니다.Route53 호스팅 영역 설정입니다.app으로 시작하는게 백엔드입니다. (CNAME이런건 그림판으로 지웠습니다.)가비아에도 서브도메인으로 등록했습니다.
-
해결됨웹플로우(Webflow) 시작하기 - 코딩 없이 자유도 높은 프로토타입 만들기
CMS Div Block 배경색 설정
위 사진은 화면구성 강의 중에 Category를 CMS로 연결하여 Div Block을 생성하는 과정입니다.이때 각 카테고리 별로 Div block의 배경색을 다 다르게 설정을 어떻게 해야할까요?
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
트랜잭션의 범위와 준영속 상태
안녕하세요 강의를 수강하다 제가 잘못 이해하고 있는 부분이 있는 것 같아서 질문드리게 되었습니다.다음은 "간단한 주문 조회 V2: 엔티티를 DTO로 변환" 강의에서 35초에 해당하는 화면을 캡처한 부분입니다.orderRepository는 @PersistenceContext 처리된 EntityManager를 가지고 있는데 이 때 Transaction의 범위가 어디까지인지를 잘 모르겠습니다.추측으로는 List<Order> all가 준영속상태로 반환될 것으로 예상했는데 order가 membe프록시 객체를 가지고 있다가 Lazy 강제 초기화가 가능한 것을 보면 영속성 컨텍스트가 여전히 존재하는 상태인 것 같습니다.Transaction의 범위가 어디까지인지 궁금합니다.감사합니다.
-
해결됨실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
제상황을 좀 더 자세히 적겠습니다.
윈도우 환경입니다. C:\terraform\terraform.exe테라폼 파일은 위 폴더에있습니다. 위 사진처럼 해당 폴더에 Terraform 폴더를 만들고해당 폴더에 main.tf 파일을 생성했습니다. main.tf파일내용은provider "aws" { region = "ap-northeast-2"} 입니다. terraform init 명령어를 치면 아래와같은메시지가 나옵니다. C:\terraform>terraform initTerraform initialized in an empty directory!The directory has no Terraform configuration files. You may begin workingwith Terraform immediately by creating Terraform configuration files. 위 내용을 구글링해보면테라폼 프로젝트가 아닌곳에서 커멘드를 치면 위와같은에러가난다고 하는데 테라폼 프로젝트가 해당 디렉토리가 맞습니다..(스크린샷 참조) 어디가 잘못된것일까요편집기에도 인식을 못했는지 색상이 변화가 없습니다(글씨)
-
미해결React + API Server 프로젝트 개발과 배포 (CI/CD)
로컬과 프로덕션 환경에서 동작이 좀 다르네요
binggo.me 라는 도메인으로 작업하는 중인데요, 리액트 라우트는 아래와 같이 작성이 되어있습니다. return ( <BrowserRouter> <Routes> <Route element={<App />}> <Route path="/" element={<Navigate replace={true} to="/home" />} /> <Route path="home" element={<UserHomePage />} /> <Route path="challenge/new" element={<MakeChallengePage />} /> <Route path="bingos/:bingoId" element={<BingoPage />} /> <Route path="challenge/:challengeId" element={<ChallengePage />} /> </Route> <Route path="*" element={<NotFoundPage />} /> </Routes> </BrowserRouter> ); '/'로 접근하면 '/home'로 리디렉션은 잘 되는데, '/home'로 바로 접근할 때 로컬에서는 잘 되고 프로덕션에서는 에러가 뜨네요. 다른 페이지들도 마찬가지로 접근이 안됩니다. 에러 내용은 아래와 같은데NotFoundError: Not Found at /home/ubuntu/local/bingo/bingo/server/app.js:45:8 at Layer.handle [as handle_request] (/home/ubuntu/local/bingo/bingo/server/node_modules/express/lib/router/layer.js:95:5) at trim_prefix (/home/ubuntu/local/bingo/bingo/server/node_modules/express/lib/router/index.js:317:13) at /home/ubuntu/local/bingo/bingo/server/node_modules/express/lib/router/index.js:284:7 at Function.process_params (/home/ubuntu/local/bingo/bingo/server/node_modules/express/lib/router/index.js:335:12) at next (/home/ubuntu/local/bingo/bingo/server/node_modules/express/lib/router/index.js:275:10) at SendStream.error (/home/ubuntu/local/bingo/bingo/server/node_modules/serve-static/index.js:121:7) at SendStream.emit (node:events:513:28) at SendStream.error (/home/ubuntu/local/bingo/bingo/server/node_modules/send/index.js:270:17) at SendStream.onStatError (/home/ubuntu/local/bingo/bingo/server/node_modules/send/index.js:421:12)app.js 45번째 라인은 접근할 수 없는 경로에서 404를 뱉게하는 부분인 것 같습니다.app.use(function (req, res, next) { next(createError(404)); });근데 또 db랑 연결해둔 api부분은 잘 접근이 되어요.잘은 모르지만 서버쪽의 app.js파일에서 라우팅을 한 경우에는 잘 되고(/api 경로로 수업때 해주신 것 처럼 라우팅 해뒀습니다), 프론트쪽 작업에서 해둔 라우팅이 로컬에서는 잘 먹고, 프로덕션에서는 안먹고 있는 것 같아요.혹시 이 문제의 해결 방법이 있을까요? 해결하기 위해서 더 필요한 정보가 있으시다면 말씀주시면 감사하겠습니다!
-
해결됨실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
영상을 아무리 찾아봐도
테라폼 폴더 구성하는것은 보이지가않네요강사님의 VS내에 보이는 Terraform 폴더는 어디서 나타난걸까요..
-
해결됨실무에서 사용하는 클라우드 보안 프로그래밍 (AWS, Python, Terraform)
질문입니다
1. 무엇을 하고 싶으신가요? 영상 01:57분에 나오는 Terraform 디렉토리는직접 만드신건가요?제가 직접 만드니 아이콘이 생기지 않습니다. 영상을 계속 하나씩 따라하다가 01:57분에 모르는폴더가 갑자기 생기고 main.tf에 코드를 넣으니 영상처럼 나오지않네요 2. 언제, 어떤 오류가 발생하시나요? 저는 윈도우 환경에서 하고있습니다.terraform.rc 파일내에 plugin_cache_dir = "/Users/incle/AppData/Roaming/terraform.d/plugin_cache"를 셋팅하였습니다. 이후 terraform init 을 명령어에 치면셋팅은 완료되었으나 영상에서럼 폴더가 생성되지 않습니다. 답답하네요 3. 어떤 시도를 해보셨나요? 4. 작성한 코드를 공유해주세요.
-
해결됨Slack 클론 코딩[백엔드 with NestJS + TypeORM]
typeorm 설치하고 설정하는 강의가 어떤건지 알려주세요!
안녕하세요. 제로초님의 강의를 다 들었었는데요.typeorm 설치하고 설정하는 강의가 있었던 것 같은데 어떤 강의인지 알려주실 수 있나요??
-
해결됨[리뉴얼] React로 NodeBird SNS 만들기
posts.js 라우터 파일에 문제가 생겼습니다
const express = require('express'); const { User, Post, Image, Comment } = require('../models'); const router = express.Router(); console.log(Post); // undefined router.get('/', async (req, res, next) => { try { const posts = await Post.findAll({ limit: 10, order: [ ['createdAt', 'DESC'], [Comment, 'createdAt', 'DESC'], ], include: [{ model: User, attributes: ['id', 'nickname'], }, { model: Image, }, { model: Comment, include: [{ model: User, attributes: ['id', 'nickname'], }], }, { model: User, as: 'Likers', attributes: ['id'], }], }); res.status(200).json(posts); } catch (error) { console.error(error); next(error); } }); module.exports = router;posts.jsconst express = require('express'); const cors = require('cors'); const passport = require('passport'); const session = require('express-session'); const cookieParser = require('cookie-parser'); const dotenv = require('dotenv'); const morgan = require('morgan'); const db = require('./models'); const passportConfig = require('./passport'); const postRouter = require('./routes/post'); const userRouter = require('./routes/user'); const postsRouter = require('./routes/posts'); dotenv.config(); db.sequelize.sync() .then(() => { console.log('db 연결 성공'); }) .catch(console.error); passportConfig(); const app = express(); app.use(express.json()); app.use(express.urlencoded({ extended: true })); app.use(cors({ origin: true, credentials: true, })); app.use(cookieParser(process.env.COOKIE_SECRET)); app.use(session({ saveUninitialized: false, resave: false, secret: process.env.COOKIE_SECRET, })); app.use(passport.initialize()); app.use(passport.session()); app.use(morgan('dev')); app.use('/posts', postsRouter); app.use('/post', postRouter); app.use('/user', userRouter); app.listen(3065, () => { console.log('3065포트 서버실행중'); });app.js(node:4192) Warning: Accessing non-existent property 'User' of module exports inside circular dependency (node:4192) Warning: Accessing non-existent property 'Post' of module exports inside circular dependency // 생략영상보면서 코딩중에위 문구와 함께 ../models에서 require한 것이존재하지 않는 문제가 발생했습니다.const { Post } = require('../models')console.log(Post) 출력결과 undefined 입니다이 문제가 posts.js 파일에서만 발생했습니다.(user.js, post.js는 정상)그래서 postss.js 라는 이름이 다르고 코드만 옮긴 파일을 만들어서 다시 시도해보았습니다.(rename시 module not found 에러 발생)그랬더니 ../models에서 require 한것이 존재했습니다.근데 요청시라우터(method: get, url: /posts)의 미들웨어가 실행이 안되는 문제가 있었습니다.상태코드는 300 Multiple Choices 였습니다이번에는 url를 바꿔서 요청을 보냈습니다ex) /posts/test그랬더니 성공했습니다.왜 이런 현상이 발생했는지어떻게 해결할 수 있는지 모르겠어서 질문남깁니다!
-
미해결Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex
깃허브 요청
인프런 아이디 : sjgio0515@naver.com인프런 이메일 : sjgio0515@naver.com깃헙 아이디 : sjgio0515@naver.com깃헙 Username : zioDaydream