묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
Entity에서 하나의 외래키로 두 개의 테이블 조인 하고싶을떄 어떻게 하나요..?
register_mber_sn이라는 컬럼을 이용하여 Member와 User 를 left join하여 findAll하여 가져오고 싶은데 중복 오류가 떠서.. 어떻게 하면 가져올수있을까요??
-
미해결홍정모의 따라하며 배우는 C언어
%lld 질문드립니다.
안녕하세요, 저는 맥북으로 vscode를 사용하여 코딩 중에 있습니다. 강의에 보면 %lld 형식지정자를 사용할 때, INT_MAX + 1을 사용하여 값을 받도록 하는데요, 저같은 경우 INT_MAX + 1이라고 넣으면 overflow가 발생하고 INT_MAX + 1LL이라고 반드시 입력을 해줘야지만 제대로 된 값이 출력됩니다. 보통 의문점이 생기면 구글링 통해서 해결하곤 하는데 이건 어떻게 검색해야 할지 감이 안 잡히네요 ㅜㅜ 아무리 생각해봐도 왜 이런 문제가 발생하는지 잘 모르겠습니다. ------------------------------------------------- 좀더 살펴보았는데요,,, problems에 경고문이 뜨네요. "format specifies type 'long long' but the argument has type 'int'" 그니까, argument 부분에서 이미 overflow가 발생했기 때문에 값이 -2147483648로 받아지는 것 같아요.그런데 이 경고문을 바탕으로 보았을 때는 강의 예시에서는 어떻게 overflow가 발생하지 않을 수 있는지 궁금합니다... go to definition에서 보면 강의에 있는 limit.h 라이브러리가 제 것과 다른데, 그 문제일 수도 있겠다 싶긴 한데요... 제 라이브러리에서는 INT_MAX가 int로 되어있고 선생님께서 사용하시는 라이브러리에는 long long으로 되어 있다든지.. 교수님의 라이브러리에는 #define처리가 되어 있었던 것 같은데 저는 그렇게 안 되어 있거든요. 이게 좀 실마리가 될 수 있을지 모르겠습니다.
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
안녕하세요 질문이 있습니다 ! (swagger docs 관련)
ApiOperation 도 안먹히고 Post에서 Body에 데이터 입력하는 부분도 나타나질 않습니다.. 해당 부분의 문제점을 도저히 못찾겠네요 ㅠㅠ
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
사진이랑 영상 원본을 서버에 그대로 저장하는 경우 문제가 생기지 않나요?
사진이나 영상 파일 한 두개 정도는 그대로 저장해도 상관 없겠지만, 극단적인 예시로 수억개를 저장한다면 디스크 문제가 생길텐데, 그런 경우에는 어떻게 하나요?
-
미해결야곰의 iOS 프로그래밍
Todo 앱에서 로컬 노티피케이션 해제 시 질문 드립니다.
안녕하세요? 오랜만에 질문 드립니다.(또 귀찮게 해드리네요 ㅠ) 잠깐 두어달간 업무가 바빠져서 iOS 공부를 손에 놓았다가 다시 시작했습니다. 질문 드릴 것은 Todo에서 로컬 노티피케이션(알림 받기)을 설정하고 저장하면 노티피케이션 request가 등록되거나 해제되는데 처음 작성하는 Todo에서 처음부터 알림 받기를 off하여 저장하면 즉, shouldNotify가 처음부터 false인 경우 let isSuccess: Bool = Todo.saveToJSONFile() if isSuccess { if self.shouldNotify { Todo.addNotification(todo: self) } else { Todo.removeNotification(todo: self) } 이 코드에서 removeNotification은 해제할 노티피케이션이 없는데도 괜찮을런지 궁금합니다. (시뮬레이터에서 앱 실행은 문제가 없는데 나중에라도 크래쉬가 날까봐 무섭네요.) 혹시 해제 전에 노티피케이션이 등록되어 있는지 확인하는 로직이 필요할까요? 아니면 iOS에서 원래 등록되지 않은 노티피케이션이면 일치하는 identifier가 없으니 해제하라는 명령을 알아서 무시할 수도 있을 것 같기도 한데... 로컬 노티피케이션을 이것저것 응용해서 간단한 앱을 만들어 보고 있는데 개발자 문서에도 없는 request에 대해 해제하려고 할 때에 대해서는 나와 있지가 않아서 혹여나 하는 마음에 질문 드립니다. 감사합니다.
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - NFT
강의자료 공유 가능할까요?
강의자료 공유 가능할까요?
-
해결됨Vue.js 끝장내기 - 실무에 필요한 모든 것
template 태그에 대해 궁금합니다.
v-if 조건부 렌더링을 할 때, div가 아닌 template태그를 사용하는 것에 대해 의문을 가지고 있었습니다. 찾아보니 template 태그는 DOM 노드에 나타나지 않는다는 점을 확인했습니다. (https://stackoverflow.com/questions/51995815/vuejs-template-vs-div-or-related-for-grouping-elements-for-conditional-rend 를 참고했습니다) 그러면 vue에서의 template 태그는 HTML 태그의 template과 동일한 역할을 하는 것인가요?? (https://developer.mozilla.org/ko/docs/Web/HTML/Element/template 이 링크를 참고했습니다.)
-
미해결[신규 개정판] 이것이 진짜 크롤링이다 - 기본편
안녕하세요. 질문이 있습니다.
안녕하세요. -m 이 무엇인지하고요. 제 pip? pip가 뭔진 모르겠는데 pip버전은 어떻게 확인하는건가요?? 질문 세부 pip install requests를 실행했습니다. 이상 없이 잘 설치 되고 아래와 같이 업그레이드를 하라는 겁니다 . (언젠가 파이썬을 설치한 기억이 있습니다. 그리고 스타트코딩유툽보고 어제 최신버전을 설치도 했었는데 ㅠㅠ) 메시지는 아래와 같습니다. C:\STARTCODING>pip install requests ~~~~~~~ 중간 삭제 ~~~~~ Successfully installed certifi-2021.10.8 charset-normalizer-2.0.7 idna-3.3 requests-2.26.0 urllib3-1.26.7 WARNING: You are using pip version 21.2.3; however, version 21.3.1 is available. You should consider upgrading via the 'C:\Users\jinkh\AppData\Local\Programs\Python\Python310\python.exe -m pip install --upgrade pip' command. 업그레이드를 하라고 명령어를 안내해주기에 복붙했습니다. C:\STARTCODING>-m pip install --upgrade pip '-m'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. // -m 을 빼고 넣었더니 되는겁니다 첫번째 질문) -m은 어떤의미인가요?(검색해도 모르겠네요 ㅠ) C:\STARTCODING>pip install --upgrade pip ~~ 중간 생략 Successfully uninstalled pip-21.2.3 구버전이 삭제되었다고합니다. ERROR: Could not install packages due to an OSError: [WinError 5] 액세스가 거부되었습니다: 'C:\\Users\\jinkh\\AppData\\Local\\Temp\\pip-uninstall-9gci4lwz\\pip.exe' Consider using the `--user` option or check the permissions. 권한문제인듯해서. VSC를 관리자로 실행했습니다. VSC 재실행후 업그레이드 명령을 다시 입력했습니다. 이번엔 이미 23.3블라블라 업그레이드가 됐다네요. 긴가 민가합니다 초보라 두번재 질문) 제 pip버전? 확인 하는 방법이 궁금합니다 pip가 뭔지도 전 python과 파이썬을 쉽게 사용하는 비쥬얼스튜디오 코드만 설치를 했는데... pip는 무엇이란 말입니까?ㅠ 허접해서 질문도 너무 허접한것 같아 민망합니다만 궁금해서용...
-
미해결스프링 핵심 원리 - 고급편
레벨이 감소하는 이유.
beginSync() 안에 createNextLevel() 있어 레벨이 증가하는건 이해가 갑니다! 그런데 createPreviousLevel() 을 사용하지 않았는데 어떻게 레벨이 감소하는건가요? 로직 순서가 OrderControllerV2의 1.trace.begin() level:0 OrderServiceV2의 2.trace.beginSync() level:1 OrderRepositoryV2의 3.trace.beginSync() level:2 4.trace.end() level:2 OrderServiceV2의 5.trace.end() level: 1(?) OrderControllerV2의 6.trace.end() level:0(?) [7b341824] OrderController.request() :id = 7b341824 level = 0 [7b341824] |-->OrderService.orderItem() :id = 7b341824 level = 1 [7b341824] | |-->OrderRepository.save() :id = 7b341824 level = 2 [7b341824] | |<--OrderRepository.save() time=1012ms :id = 7b341824 level = 2 [7b341824] |<--OrderService.orderItem() time=1015ms :id = 7b341824 level = ? [7b341824] OrderController.request() time=1018ms :id = 7b341824 level = ?
-
미해결홍정모의 따라하며 배우는 C++
cin.ignore() 와 getchar() 질문
C++ 에서는 버퍼를 지울때 getchar() 를 이용하는 거보다 cin.ignore() 함수를 사용하는게 더좋은가요? 아니면 멀쓰던지간에 상관이 없는지 궁금합니다!!
-
미해결탄탄한 백엔드 NestJS, 기초부터 심화까지
useFactory 사용시 resource 파일 분리 후 di 방법
먼저 너무 좋은 ADMIN 대시보드 라이브러리를 알려주셔서 감사합니다. 해당 라이브러리로 몇가지 테스트해보는 중인데 adminJsOptions가 너무 길어져 resources를 별도의 파일로 분리하려 하고 있습니다. 하다보니 이미 factory로 blogModel을 inject하고 있는데 resources를 별도의 파일로 분리하려고 보니 blogModel을 분리한 파일에서 어떻게 가져와야할지 막막하더라구요. adminjs뿐아니라 다른 모듈을 사용할때도 useFactory를 통해 di를 해주는경우가 많은데 이럴때는 분리된 파일에는 어떻게 의존성을 주입해줘야 할까요??? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 import * as AdminJSMongoose from '@adminjs/mongoose'; import { AdminModule as AdminBroModule } from '@adminjs/nestjs'; import { Module } from '@nestjs/common'; import { getModelToken } from '@nestjs/mongoose'; import AdminJS from 'adminjs'; import { Model } from 'mongoose'; import { UsersModule } from 'src/users/users.module'; import { User } from 'src/users/users.schema'; import { after, before } from './hooks/users.hooks'; AdminJS.registerAdapter(AdminJSMongoose); @Module({ imports: [ AdminBroModule.createAdminAsync({ imports: [UsersModule], inject: [getModelToken(User.name)], useFactory: (usersModel: Model<User>) => ({ adminJsOptions: { rootPath: '/admin', resources: [ { resource: usersModel, options: { navigation: { name: null, icon: '', }, properties: { email: { isTitle: false, position: 1, }, name: { isTitle: true, }, _id: { isVisible: { list: false }, }, password: { isVisible: false, }, }, actions: { edit: { isAccessible: isAdmin }, delete: { isAccessible: isAdmin }, new: { isAccessible: isAdmin }, show: { isAccessible: isAdmin, }, list: { isAccessible: isAdmin }, custom_delete: { actionType: 'record', icon: 'TrashCan', guard: 'doYouReallyWantToDoThis', variant: 'danger', before: before, after: after, handler: async (request, response, context) => { const user = context.record; await usersModel.findOne({_id: request.params.id}); console.log('custom handler!!!'); return { record: user.toJSON(context.currentAdmin), }; } }, }, }, }, ], }, auth: { authenticate: async (email, password) => { const user = await usersModel.findOne({ email: email }); if (user) { const matched = user.password === password; if (matched && user.role === 'ADMIN') { return user.readOnlyData; } } return null; }, cookieName: 'cookie-test', cookiePassword: 'test', }, }), }), ], }) export class AdminModule {} const isAdmin = ({ currentAdmin }) => currentAdmin && currentAdmin.role === 'ADMIN'; resource 코드 분리 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 import * as AdminJSMongoose from '@adminjs/mongoose'; import { AdminModule as AdminBroModule } from '@adminjs/nestjs'; import { Module } from '@nestjs/common'; import { getModelToken } from '@nestjs/mongoose'; import AdminJS from 'adminjs'; import { Model } from 'mongoose'; import { UsersModule } from 'src/users/users.module'; import { User } from 'src/users/users.schema'; import { after, before } from './hooks/users.hooks'; import { userResource } from './resources/users.resource'; AdminJS.registerAdapter(AdminJSMongoose); @Module({ imports: [ AdminBroModule.createAdminAsync({ imports: [UsersModule], inject: [getModelToken(User.name)], useFactory: (usersModel: Model<User>) => ({ adminJsOptions: { rootPath: '/admin', resources: [ userResource ], }, auth: { authenticate: async (email, password) => { const user = await usersModel.findOne({ email: email }); if (user) { const matched = user.password === password; if (matched && user.role === 'ADMIN') { return user.readOnlyData; } } return null; }, cookieName: 'cookie-test', cookiePassword: 'test', }, }), }), ], }) export class AdminModule {} const isAdmin = ({ currentAdmin }) => currentAdmin && currentAdmin.role === 'ADMIN'; 함수로 만들어 파라미터로 넘겨주는 방법밖에 없을까요???
-
미해결비전공자를 위한 개발자 취업 올인원 가이드 [통합편]
선생님! TIL과 오늘 작성한 코드 정리가 헷갈립니다.
덕분에 길잡이를 하고 있는 개발 입문자입니다!! 깃헙에서 해야할 것들에서 설명해주신 TIL저장소를 만들어서 매일 공부한 내용을 저장하라는 말씀과 다음내용의 기술서적, 학원강의, 인강을 수강하며 작성한 코드를 올리는 Github저장소를 만들고 관리하라고 말씀해주셨는데요! 제가 보기에 TIL과 기술서적, 학원강의, 인강을 수강하며 작성한 코드 올리는 것의 차이를 잘 모르겠습니다ㅠㅠ
-
미해결홍정모의 따라하며 배우는 C++
uintpr_t와 void*의 차이점
안녕하세요. 2.1강 강의 1분 40여초 부터 나오는 예시 코드에서 (uintptr_t)를 사용해주는 이유가 궁금해서 질문 남깁니다. int i = -1; cout << (uintptr_t)static_cast<void*>(&i) << endl; cout << static_cast<void*>(&i) << endl; cout << &i << endl; 를 차례로 출력을 했을 때 7731616 0075F9A0 0075F9A0 가 출력이 되었는데요. &연산자가 해당 변수가 저장된 주소를 가리킨다고 이해하고 (void*)의 경우 Datatype을 모르는 상태에서도 주소를 가리킬 수 있는 포인터라고 알고 있는데요. (uintptr_t)의 역할이 무엇인지 궁금하여 질문 남깁니다. 16진수를 10진수로 출력하기 위해 사용하는 것인가요? 제가 참고한 자료는 https://stackoverflow.com/questions/40941825/understanding-void-against-intptr-t-and-uintptr-t https://stackoverflow.com/questions/1845482/what-is-uintptr-t-data-type 등이 있는데 아직 잘 이해가 되질 않네요...ㅠㅠ
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
업로드한 이미지가 다르게 나옵니다
사진처럼 폼이 아래에 있는데 아래는 제가 작성한 코드입니다.
-
미해결자바스크립트 알고리즘 문제풀이 입문(코딩테스트 대비)
뒤집은 소수 질문입니다.
<script> function solution(n, arr){ let answer; let reversedNumberArray = [] arr.forEach(item => { let reversedText = '' item.toString().split('').reverse().forEach(item => reversedText += item) reversedNumberArray.push(Number(reversedText)) }) answer = reversedNumberArray.filter(item => { if(item === 1) return false for(let i=2; i <= Math.sqrt(item); i++){ if(item % i === 0) return false } return true }) return answer; } let arr=[32, 55, 62, 20, 250, 370, 200, 30, 100]; console.log(solution(9, arr)); </script> Number('001') 은 1로 변환되기에 이렇게 코드를 짜봤는데요, 문제가 있을까요?
-
미해결프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
SyntaxError: invalid syntax 가 자꾸 나타납니다
맥북에서 수업을 듣고 있습니다. 프린트 함수까지는 되는데 세퍼레이터 함수부터 작은따옴표? 문제인지 수업내용과 다르게 나오고 SyntaxError: invaild syntax가 나와서 화면처럼 구현이 되지 않습니다. 그리고 autocomplete-python traceback output 이런 안내문구가 작성창 옆에 계속 뜨는데 설정을 잘못한건가요?
-
해결됨자바 ORM 표준 JPA 프로그래밍 - 기본편
파라미터바인딩 질문입니다.
안녕하세요. 파라미터 바인딩은 꼭 해줘야하는건가요?? 이 코드를 이렇게해도 정상적으로 실행되던데 꼭해야하는건가요?? 혹시 다른 파라미터를 변수로 받아야할때 쓰는거면 "select m from Member m where m.username = " + 변수 이렇게도 슬수있을거같아서요 ㅠㅠ 너무초보라 죄송합니다.
-
해결됨파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
Messages Framework 작성하는 중인데 부트스트랩이 깨지고 닫기버튼이 눌리지 않아요
안녕하세요 강사님! 메세지 프레임워크 적용시 사진과 같이 깨지고 버튼도 안눌리는데 제 코드에 문제가 있는건가요? {% load bootstrap4 static %} <!DOCTYPE html> <html lang="kr"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title><link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-1BmE4kWBq78iYhFldvKuhfTAU6auU8tT94WrHftjDbrCEXSU1oBoqyl2QvZ6jIW3" crossorigin="anonymous"> <script src="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/js/bootstrap.min.js" integrity="sha384-QJHtvGhmr9XOIpI6YVutG+2QOK9T+ZnN4kzFN1RtK3zEFEIsxhlmWl5/YESvpZ13" crossorigin="anonymous"></script> <script src="https://code.jquery.com/jquery-2.2.4.js" integrity="sha256-iT6Q9iMJYuQiMWNd9lDyBUStIq/8PuOW33aOqmvFpqI=" crossorigin="anonymous"></script> </head> <body> <div class="container"> <div class="row"> <div class="col-sm-12"> {% bootstrap_messages %} <!-- 아래 방법도 똑같음, 직접 커스텀 가능 --> <!-- {% if messages %} <div class="messages"> {% for message in messages %} <div class="alert alert-{{ message.tags }}"> {{ message.message }} </div> {% endfor %} </div> {% endif %} --> </div> </div> </div> {% block content %} {% endblock content %} </body> </html>
-
미해결Klaytn 클레이튼 블록체인 어플리케이션 만들기 - 이론과 실습
klay ide 업데이트
안녕하세요 클레이튼에서 IDE가 업데이트가 되서 수업을 따라가는데 문제가 생겼습니다. 혹시 지금 시점에서의 클레이ide를 가지고 강의를 완강하는데 한번 살펴봐줄실 수 있을까요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
리렌더링 관련 질문 드립니다.
안녕하세요. 강의 잘 수강하고 있습니다. 다름이 아니라 리렌더링 강좌에서 궁금한게 생겼는데 inLine style을 적용하지 않고 className으로 css를 적용했을 때는 리렌더링이 일어나는지 궁금합니다. 테스트를 진행 해보려고 했는데 css는 테스트를 어떻게 진행해야 하는지 방법이 안떠올라 질문 드립니다.. 감사합니다