inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

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

소스작성중에서요 queryFactory중에?

미해결

쥬쥬와 함께 하루만에 시작하는 백엔드 - 스프링, 도커, AWS

queryFactory중에서 select( QReviewEntity .reviewEntity.score.avg()) queryFactory.selectFrom( QTestEntity .testEntity) 중에서 QReviewEntity, QTestEntity가 에러가 나네요. 어찌해야 할지요? db오라클로 하고 있어요.

  • spring
  • git
  • docker
  • spring-boot
  • jpa
  • github
hanbong 댓글 3 좋아요 0 조회수 458

영상 14분쯤에 대한 질문입니다.

미해결

HTML+CSS+JS 포트폴리오 실전 퍼블리싱(시즌1)

강의 영상에서는 .tabs에 relative, 100vh .items에 absolute top, left 이렇게 강의 해주셨는데 제가 다르게도 한번 해보았습니다. 이렇게 하니 코드가 조금이나마 짧은것 같아서요~ 동작은 똑같이 하는데 이렇게 해도 실무에 적용하는데 구조적으로 문제 없는지 궁금해서 질문 드려봅니다. 항상 좋은강의 감사합니다 선생님!

  • HTML/CSS
  • jquery
이종주 댓글 1 좋아요 1 조회수 225

JWTAuthorizationFilter에서,,

미해결

스프링부트 시큐리티 & JWT 강의

강의를 토대로 로그인 페이지를 구현하고, 이를 이용해서 로그인 과정을 거치는 로직을 구현하는 도중에 문제가 발생했습니다. 커스텀 필터를 만들어서 각각 JWTAuthenticationFilter와 JWTAuthorizationFilter를 거치게끔 해놓고, JWTAuthenticationFilter까지는 잘 마무리 지었습니다만, successfulAuthentication 메소드에 response를 설정하고 JWTAuthorizationFilter로 넘길 때 request에 Token을 받아들이지 못합니다.(포스트맨으로 넘길 때는 잘 나오는데 왜그러는지 모르겠네요,,) @Override protected void successfulAuthentication(HttpServletRequest request, HttpServletResponse response, FilterChain chain, Authentication authResult) throws IOException, ServletException { System.out.println("========================================="); System.out.println("Authentication이 실행됨 : 인증이 완료되었다는 뜻임"); PrincipalDetails principalDetails=(PrincipalDetails)authResult.getPrincipal(); //RSA방식이 아닌, Hash암호방식 String jwtToken = JWT.create() .withSubject(principalDetails.getUsername()) // token 별명 느낌? .withExpiresAt(new Date(System.currentTimeMillis()+JWTProperties.EXPIRATION_TIME)) // Token 만료 시간 -> 현재시간 + 만료시간 .withClaim("id", principalDetails.getMember().getMemberID()) // 비공개 Claim -> 넣고싶은거 아무거나 넣으면 됨 .withClaim("username", principalDetails.getMember().getMemberName()) // 비공개 Claim .sign(Algorithm.HMAC512(JWTProperties.SECRET)); // HMAC512는 SECRET KEY를 필요로 함 //String jwtToken =TokenUtils.generateJwtToken(principalDetails.getMember()); response.addHeader(JWTProperties.HEADER_STRING, JWTProperties.TOKEN_PREFIX+jwtToken); response.setHeader(JWTProperties.HEADER_STRING, JWTProperties.TOKEN_PREFIX+jwtToken); response.setHeader(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_VALUE); System.out.println("response : "+response); System.out.println("JWTAuthenticationFilter에서의 response.getHeader('Authorization')) : "+response.getHeader(JWTProperties.HEADER_STRING)); [ JWTAuthorizationFilter.java ] @Log4j2 public class JWTAuthorizationFilter extends BasicAuthenticationFilter { private final MemberRepository memberRepository; public JWTAuthorizationFilter(AuthenticationManager authenticationManager, MemberRepository memberRepository){ super(authenticationManager); System.out.println("JWTAuthorizationFilter : 인증이나 권한이 필요한 주소가 요청됨"); System.out.println("========================================="); this.memberRepository=memberRepository; } // 인증이나 권한이 필요한 주소 요청이 있을 때 해당 필터를 타게 됨 @Override protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { //String header=request.getHeader("Authorization"); System.out.println("request : "+request); System.out.println("Authorization : "+request.getHeader(JWTProperties.HEADER_STRING)); String header=request.getHeader(JWTProperties.HEADER_STRING); System.out.println("JWTAuthorizationFilter에서의 JWTHeader : "+header); // JWT Token // Enumeration<String> headerNames = request.getHeaderNames(); // while (headerNames.hasMoreElements()) { // String headerName = headerNames.nextElement(); // System.out.println("Header: " + headerName + ", Value: " + request.getHeader(headerName)); // } // header가 있는지(유효한지) 확인 // 토큰이 잘못될 경우 다음 filter로 흘려 보낸다. if(header==null||!header.startsWith(JWTProperties.TOKEN_PREFIX)){ System.out.println("Not Allowed User"); chain.doFilter(request,response); return; } // JWT Token을 검증해서 정상적인 사용자인지 확인 String token = request.getHeader(JWTProperties.HEADER_STRING).replace(JWTProperties.TOKEN_PREFIX, ""); String memberID = JWT.require(Algorithm.HMAC512(JWTProperties.SECRET)).build().verify(token).getClaim("memberID").asString(); // verify()를 통해서 서명 System.out.println("token : "+token); System.out.println("memberID : "+memberID); // 서명이 정상적으로 동작했을 경우 if(memberID!=null){ Member memberEntity = memberRepository.findByMemberID(memberID); System.out.println("UserEntity 정상 : " +memberEntity); PrincipalDetails principalDetails = new PrincipalDetails(memberEntity); System.out.println("MemberName : "+memberEntity.getMemberName()); // JWT Token 서명을 통해서 서명이 정상적이면 Authentication 객체를 만들어준다. Authentication authentication = new UsernamePasswordAuthenticationToken(principalDetails, null, principalDetails.getAuthorities()); System.out.println("JWTAuthorization에서의 authentication : "+authentication); // 강제로 Security의 Session에 접근하여서 Authentication 객체를 저장시킨다. SecurityContextHolder.getContext().setAuthentication(authentication); System.out.println("Successfully Saved Authentication" + authentication); } // super.doFilterInternal(request, response, chain); chain.doFilter(request,response); } } 더 자세한 내용은 github 참고 부탁드립니다. https://github.com/msun0215/SWProject/tree/1208

  • spring
  • spring-security
  • jwt
msun0215 댓글 2 좋아요 0 조회수 547

이 강의 전에 뭘 공부해야하나요? 무슨소린지 하나도 모르겠는데..

미해결

스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술

자바'만' 알아요. 입문강의라고 해서 들어봤는데 자바 처음 공부할때처럼 자바란 뭐고 어디에 쓰이고 등등부터 알려주시는것처럼 알려주시는줄 알았는데 그냥 따라하기부터 바로 들어가시더라구여.... 저는 스프링이 뭔지, 어디에 쓰이는지, 왜 배워야되는지 등등 완전 기초적인것부터 알려주실줄 알았는데... 완전 기초용 강의는 없나요?....

  • java
  • spring
  • mvc
  • spring-boot
tallure1969 댓글 3 좋아요 0 조회수 550

강의 개정판 계획 문의

해결됨

스프링 시큐리티

해당 강의 개정판 계획이 있으신지 문의드립니다!

  • java
  • spring-boot
  • spring-security
SHYU 댓글 1 좋아요 2 조회수 475

홀삭제 좌표 지정

해결됨

QGIS 파이썬 자동화 (벡터편) Ver.2

- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 디졸브한 산출물에서 홀삭제 진행 시 홀삭제에서 삭제한 산출물의 좌표값이 지정되지 않아 기존의 디졸브한 산출물의 위치와 다른곳에 나타나는데 홀삭제 메뉴에서는 별도의 좌표값 지정이 없는데 결과 도출 후 좌표를 별도로 지정해주어야 하는것인가요?

  • python
  • qgis
  • GIS
황진영 댓글 1 좋아요 1 조회수 312

2-J 질문드립니다.

미해결

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

안녕하세요 선생님! http://boj.kr/6ef33cd0118348bf9e15f38303108e38 이렇게 하면 예시로 주어진 입출력 1,2는 맞게 나오는데 결과는 오답으로 나옵니다. 어느 부분에서 제가 잘못 생각한 것인지 궁금합니다!

  • c++
  • 코딩-테스트
비가싫어요 댓글 1 좋아요 0 조회수 264

수업자료

미해결

안녕, 일본어는 처음이지? 누구나 쉽게 배우는 기초 일본어!

폰으로 보기 위해 타 강의처럼 자료는 따로 받을수 없을까요?

  • 일본어
정민기 댓글 1 좋아요 0 조회수 418

자소서는 굳이 작성할 필요가 없는걸까요?

해결됨

실제 이력서 사례로 알아보는 [합격하는 이력서] 작성 가이드

이력서 작성 가이드를 알려주셨는데 자소서에 대한 언급이 없으셔서 질문합니다! 자소서 항목(성장과정, 장단점, 지원동기, 입사후 포부)은 굳이 작성할 필요가 없는 것인지 궁금합니다!

  • 면접
  • 이력서
젤리야 댓글 2 좋아요 0 조회수 988

액터에 우선권을 사용자 설정할 수 있었나요?

해결됨

이득우의 언리얼 프로그래밍 Part3 - 네트웍 멀티플레이 프레임웍의 이해

다시 쭉 보다 보니 궁금한게 하나씩 계속 나오는 것 같습니다... Owner 설정해서 배율을 높히는 것 말고 다른 manual적 방법이 있나요?

  • unreal-engine
  • 네트워크
  • 언리얼-c++
themoon007 댓글 1 좋아요 0 조회수 272

어노테이션매핑정보 - 404 오류 문의드립니다

미해결

토비의 스프링 부트 - 이해와 원리

안녕하세요. 어노테이션 매핑정보 사용 강의 보고 궁금한점이 생겨 문의 남겼습니다. 지금까지 강의에 나온것과 똑같이 코드를 작성했습니다. 그런데 실행하면 예상했던 값이 나오지 않고 404 오류가 떠요. 실행창에는 아래와 같은 메세지가 나옵니다. 16:09:26.879 [http-nio-8080-exec-1] WARN org.springframework.web.servlet.PageNotFound -- No mapping for GET /hello 16:09:26.886 [http-nio-8080-exec-1] WARN org.springframework.web.servlet.PageNotFound -- No endpoint GET /hello. 그래서 HelloController 클래스위에 @RequestMapping을 지우고 대신 @Controller을 추가해봤더니 그제서야 강의와 같은 결과가 나옵니다. 제 스프링 버전은 3.x, jdk17인데 이것과 관련이 있을까요? 같은 코드인데 왜 저는 404가 나오는지 궁금합니다...

  • spring
  • spring-boot
  • spring-jdbc
tjsdka7434 댓글 3 좋아요 0 조회수 1863

vue3 강의 영상보고 여기 왔습니다. Volar로 설치하고 진행중인데요

미해결

Vue.js 중급 강좌 - 웹앱 제작으로 배워보는 Vue.js, ES6, Vuex

안녕하세요 저는 일단 vue3 기초영상보고 왔습니다 그리고 여기 강의 실습하는 상황에 막히는 부분이 있어서 질문 드립니다. 설치는 vue3 볼라로 하고 있고요 뭔가 웹팩 설치도 막혔지만.. 그냥 넘겼습니다. 우선 11장까지는 잘 따라가고 있는데 12장부터 문제네요 todo앱을 vuex로 바꾸는 부분부터 뭔가 잘 안되는거 같아요... volar와 vuter에 대해 vuex랑vuex헬퍼 설치나 사용법 차이가 있나요? vue3에 volar로도 vuex나 헬퍼 사용 가능하죠?

  • javascript
  • vue.js
  • es6
  • vuex
leehyunggon 댓글 1 좋아요 1 조회수 466

[공유]Invalid value type for attribute 'factoryBeanObjectType': java.lang.String

미해결

스프링 DB 2편 - 데이터 접근 활용 기술

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 스프링 부트 버전 3.2.0 사용 하시는분들 mybatis 의존성 추가하실때 이렇게 추가하시면 돼요..!

  • spring
  • mvc
  • jpa
  • querydsl
  • spring-data-mybatis
  • spring-jpa
박준일 댓글 3 좋아요 12 조회수 9601

10.6강 1번 문제 1차원 배열을 2차원 배열로 만드는 문제

해결됨

홍정모의 따라하며 배우는 C언어

double year2021[MONTHS] = { -2.4, 2.7, 9.0, 14.2, 17.1, 22.8, 28.1, 25.9, 22.6, 15.6, 8.2, 0.6 }; double year2022[MONTHS] = { -2.2, -1.1, 7.7, 14.8, 19.1, 23.3, 27.3, 25.7, 22.4, 14.6, 10.0, -2.8 }; double year2023[MONTHS] = { -1.5, 2.3, 9.8, 13.8, 19.5, 23.4, 26.7, 27.2, 23.7, 15.8, 6.8, 3.1 }; // 1. 1차원 배열을 2차원 배열로 구현 // 배열명의 값은 배열의 시작 주소와 같다. double* temperature[] = { year2021, year2022, year2023 }; printf("%zd %zd %zd %zd\n", sizeof(temperature), sizeof(temperature[0]), sizeof(*temperature[0]), sizeof(year2021) ); 1차원 배열(2021년, 2022년, 2023년)의 주소를 2차원 포인터 배열의 요소로 초기화했습니다. // 1. 1차원 배열을 2차원 배열로 구현 // 배열명의 값은 배열의 시작 주소와 같다. double* temperature[] = { year2021, year2022, year2023 }; 2중 for문의 내부 for 문의 조건부를 지정할 때 sizeof 연산자를 이용해서 아래같은 방식으로 구현하려고 했습니다. size_t col = sizeof(temperature[0]) / sizeof[double]; for(int j = 0; j < sizeof(temperature) / sizeof(temperature[0]); ++j) { for(int i = 0; i < col; ++i) { // (j, i)번째 요소 출력문 } } 제가 생각한건 'temperature[0]에 저장된 값이 year2021의 메모리 시작 주소와 같으므로 temperature[0]의 값을 역참조하면 year2021 배열 전체를 가리킬 것이다' 였는데 sizeof(*temperature[0]); 이 값이 year2021 의 0번째 double 요소 로 역참조되서 그런지 결과값이 8 로 잡혀서 size_t col = sizeof(temperature[0]) / sizeof[double]; col 의 값이 1 로 계산됩니다.. 어떻게 하면 temperature[0] 을 이용해서 배열 year2021 의 전체 길이 를 반환할 수 있을까요..??

  • c
쉽지않네 댓글 1 좋아요 2 조회수 497

C++로 플레이페어 암호를 구현하려고 해요..

미해결

// C++ program for encryption using Playfair Cipher #include <iostream> #include <cstring> #include <algorithm> using namespace std; #define SIZE 30 // Function to convert the string to lowercase void toLowerCase(char plain[], int ps) { for (int i = 0; i < ps; i++) { if (plain[i] >= 'A' && plain[i] <= 'Z') // 대문자를 소문자로 변환 plain[i] = tolower(plain[i]); } } // Function to remove duplicate characters from the key void removeDuplicates(char key[], int &ks) { int index = 0; for (int i = 0; i < ks; ++i) { int j; for (j = 0; j < i; ++j) { if (key[i] == key[j]) { break; } } if (i == j) { key[index++] = key[i]; } } key[index] = '\0'; ks = index; } // Function to remove all spaces in a string int removeSpaces(char *plain, int ps) { int count = 0; for (int i = 0; i < ps; i++) { if (plain[i] != ' ') plain[count++] = plain[i]; } plain[count] = '\0'; return count; } // Function to generate the 5x5 key square void generateKeyTable(char key[], int ks, char keyT[5][5]) { int i, j, k, *d; // a 26 character hashmap to store count of the alphabet d = (int *)calloc(26, sizeof(int)); for (i = 0; i < ks; i++) { if (key[i] != 'j') d[key[i] - 97] = 2; } d['j' - 97] = 1; i = 0; j = 0; for (k = 0; k < ks; k++) { if (d[key[k] - 97] == 2) { d[key[k] - 97] -= 1; keyT[i][j] = key[k]; j++; if (j == 5) { i++; j = 0; } } } for (k = 0; k < 26; k++) { if (d[k] == 0) { keyT[i][j] = (char)(k + 97); j++; if (j == 5) { i++; j = 0; } } } } // Function to search for the characters of a digraph // in the key square and return their position void search(char keyT[5][5], char a, char b, int arr[]) { int i, j; if (a == 'j') a = 'i'; else if (b == 'j') b = 'i'; for (i = 0; i < 5; i++) { for (j = 0; j < 5; j++) { if (keyT[i][j] == a) { arr[0] = i; arr[1] = j; } else if (keyT[i][j] == b) { arr[2] = i; arr[3] = j; } } } } // Function to find the modulus with 5 int mod5(int a) { return (a % 5); } // Function to make the plain text length to be even int prepare(char str[], int ptrs) { if (ptrs % 2 != 0) { str[ptrs++] = 'z'; str[ptrs] = '\0'; } return ptrs; } // Function for performing the encryption void encrypt(char str[], char keyT[5][5], int ps) { int i, a[4]; for (i = 0; i < ps; i += 2) { search(keyT, str[i], str[i + 1], a); if (a[0] == a[2]) { str[i] = keyT[a[0]][mod5(a[1] + 1)]; str[i + 1] = keyT[a[0]][mod5(a[3] + 1)]; } else if (a[1] == a[3]) { str[i] = keyT[mod5(a[0] + 1)][a[1]]; str[i + 1] = keyT[mod5(a[2] + 1)][a[1]]; } else { str[i] = keyT[a[0]][a[3]]; str[i + 1] = keyT[a[2]][a[1]]; } } } void preparePlainText(char txt[], string mEncryption) { int cnt = 0; mEncryption.erase(remove(mEncryption.begin(), mEncryption.end(), ' '), mEncryption.end()); cout << "\n공백 제거 후: " << mEncryption << endl; char txt2[2 * SIZE]; strcpy(txt2, mEncryption.c_str()); cnt = 0; int len = strlen(txt2); for (int i = 0; i < len; i += 2){ if (txt2[i] == txt2[i + 1]) { txt[cnt++] = txt2[i]; txt[cnt++] = 'x'; } else { txt[cnt++] = txt2[i]; txt[cnt++] = txt2[i + 1]; } } len = strlen(txt); if (len % 2 == 1) { txt[len] = 'x'; txt[len + 1] = '\0'; } cout << "X 붙이고 자른 후: "; for (int i = 0; txt[i] != 0; i++) { cout << txt[i]; if (i % 2 == 1) { cout << " "; } } } // Function to display the 5x5 key table including paired characters void displayKeyTableWithPair(char keyT[5][5], char pair1, char pair2) { cout << "\n5x5 Key Table:" << endl; for (int i = 0; i < 5; ++i) { for (int j = 0; j < 5; ++j) { if (keyT[i][j] == pair1) { cout << pair1 << "/" << pair2 << "\t"; } else if (keyT[i][j] == pair2) { // To avoid duplicate display when pair1 == pair2 if (pair1 != pair2) { continue; } cout << pair1 << "/" << pair2 << "\t"; } else { cout << keyT[i][j] << "\t"; } } cout << endl; } } // Function to encrypt using Playfair Cipher void encryptByPlayfairCipher(char str[], char key[]) { int ps, ks; char keyT[5][5]; ks = strlen(key); ks = removeSpaces(key, ks); toLowerCase(key, ks); ps = strlen(str); toLowerCase(str, ps); ps = removeSpaces(str, ps); ps = prepare(str, ps); generateKeyTable(key, ks, keyT); encrypt(str, keyT, ps); } void generateKeyTableWithPair(char key[], int ks, char keyT[5][5], char pair1, char pair2) { int i, j, k, *d; // a 26 character hashmap to store count of the alphabet d = (int *)calloc(26, sizeof(int)); for (i = 0; i < ks; i++) { if (key[i] != 'j') d[key[i] - 97] = 2; } d['j' - 97] = 1; i = 0; j = 0; bool addedPair1 = false, addedPair2 = false; for (k = 0; k < ks; k++) { if (d[key[k] - 97] == 2) { d[key[k] - 97] -= 1; keyT[i][j] = key[k]; j++; if (j == 5) { i++; j = 0; } } } // Additional loop to accommodate remaining characters for (k = 0; k < 26; k++) { if (d[k] == 0) { if (key[k] == pair1 && !addedPair1) { keyT[i][j++] = pair1; keyT[i][j++] = pair2; addedPair1 = true; } else if (key[k] == pair2 && !addedPair2) { keyT[i][j++] = pair2; keyT[i][j++] = pair1; addedPair2 = true; } else if (key[k] != pair1 && key[k] != pair2) { keyT[i][j++] = (char)(k + 97); } if (j == 5) { i++; j = 0; } } } } int main() { char str[SIZE], key[SIZE]; cout << "키 값 입력 ↓ " << endl; cin.getline(key, SIZE); int ks = strlen(key); removeDuplicates(key, ks); cout << "중복 제거된 키 값 -> " << key << endl; // Additional input for two characters char pair1, pair2; cout << "\n알파벳 2개 입력: "; cin >> pair1 >> pair2; cout << "\n평문 입력 ↓ " << endl; cin.ignore(); // Clear input buffer cin.getline(str, SIZE); cout << "\n"; cout << "입력된 키 값 -> " << key << endl; cout << "입력된 평문 -> " << str << endl; // Generate the 5x5 key table with pair1 and pair2 included char keyT[5][5]; generateKeyTableWithPair(key, ks, keyT, pair1, pair2); // Display the 5x5 key table including paired characters displayKeyTableWithPair(keyT, pair1, pair2); // Prepare the plaintext and pair characters char txt[2 * SIZE]; string plaintext(str); preparePlainText(txt, plaintext); encryptByPlayfairCipher(str, key); cout << "\n" << endl; cout << "암호문 : " << str << endl; return 0; } 이 코드를 실행시키면 아래처럼 나옵니다.. 키 테이블이 문제인데요.. 묶음처리해서 26개 알파벳 모두 넣으려고 하는데 generateKeyTableWithPair()이나 displayKeyTableWithPair()이 문제인가 싶어서 수정해볼려고 하는데도 잘 안돼서요.. 일부러 알파벳 철자 2개를 입력받아서 입력 받은 철자 2개를 묶는걸 의도한건데 어렵게되었어요.. 어디가 문제인건지..고쳐주세요..ㅠㅠㅠㅠ

Tiz 댓글 1 좋아요 0 조회수 359

강의에서 사용하시는 강의자료 제공 문의

해결됨

2026년 CPPG 개인정보관리사 자격증 취득하기 (개정안 반영)

강의에서 사용하시는 자료는 어디에서 다운로드 가능할까요?

  • security
  • cppg
e99 댓글 2 좋아요 0 조회수 612

vite-plugin-vue-layouts 종속성 충돌 관련

해결됨

Vue 3 & Firebase 10 커뮤니티 만들기 풀스택 - "활용편" (with Pinia, Quasar, Tiptap, VueUse)

안녕하세요, vue-plugin-vue-layouts 설치 시 종속성 충돌 관련 에러가 발생합니다. (node 및 npm, 그리고 package.json 내용 모두 강좌와 동일하게 진행중입니다.) github issue를 보니 vite version 관련한 문제로 보인다, 4.0.0을 지원해달라 등의 이야기가 있습니다. 혹시 저와 같은 문제를 겪으신 분은 안계실까요? 이 때, vite 버전 문제 관련한 부분을 해결(?)한 사람이 있더라고요. https://github.com/charrue/vite-plugin-vue-layouts a. 원본을 fork한 이 것을 프로젝트에 설치해서 사용 시에 문제가 될까요? b. a 방법보다는, 원본에 --force 옵션을 두고 설치하는 것이 더 나은 선택일까요?

  • vue.js
  • firebase
  • quasar
  • algolia
  • vue-3
egpark 댓글 2 좋아요 2 조회수 1083

함수 관련으로 질문이 있습니다.

미해결

[리뉴얼] 파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)

안녕하세요, 함수 문제를 풀어보다가, 문의사항이 있어서 질문 올립니다. 67, 68번 예시와 다르게 노출되어, 원인이 무엇인 지 알고 싶습니다. Excercise 67. 함수 문제를 아래 방식으로 풀어봤는데, 결과 값에 'None' 값도 같이 출력되는지 알고 싶습니다. Excercise 68. 역시 풀어보다가, 똑같이 'None' 값이 나와서 이유를 알고 싶습니다! 감사합니다.

  • python
  • 웹-크롤링
awawss1 댓글 1 좋아요 0 조회수 210

Mac에서 Blender 작업 시, 렌더링 단축키

해결됨

친절한 블렌더 - [LV.0] 입문 필수

안녕하세요, 수업 잘 듣고 있습니다. 맥북으로 수강 중인데, 렌더링 단축키 F12를 누르면 사운드(맥북 시스템 사운드) 음량이 조절이 되고 렌더링 창이 뜨질 않아요.. 한글 입력 상태라 그런건가 확인을 해봐도 해결이 되지 않고, 인터넷 검색해봐도 렌더링 단축키 해결에 대해선 뜨질 않아 문의드립니다!

  • blender
  • 3d-modelling
  • 3d-rendering
wonji89 댓글 1 좋아요 2 조회수 2614

질문있습니다

미해결

스프링 핵심 원리 - 기본편

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 스프링 컨테이너에 등록하는 코드를 똑같이 작성했는데 기존과 실행결과가 같고, 디버그 실행문이 안뜹니다. 어디가 문제인가요?

  • spring
  • 객체지향
이준승 댓글 1 좋아요 0 조회수 342

인기 태그

인프런 TOP Writers

주간 인기글