묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨PHP 7+ 프로그래밍: 객체지향
Session을 생성할 때 sessions 테이블 id 컬럼의 값이 어떻게 결정되는지 궁금합니다.
안녕하세요, Sessions 강의를 듣고 궁궁한 것이 생겨 질문드립니다. 강의 내용에서는 SessionHandlerInterface의 구현체 클래스를 선언하여 사용하는 것으로 보이는데요. index.php의 예제 코드 실행시 처음 생성되는 SESSION 데이터가 있으면 sessions 테이블에 세션 정보가 INSERT 되는 것으로 확인이 되었습니다. 하지만 sessions 테이블의 id 컬럼의 값이 자동으로 들어가지는 것을 확인할 수 있었는데요. 이 id은 PHPSESSID에서 가져오는 것 같은데, 그 과정에 대해 알 수 있을까요?
-
해결됨PHP 7+ 프로그래밍: 객체지향
라우팅 설정 후 페이지 접속 경로에 대한 질문입니다.
안녕하세요, 라우팅 강의를 듣고 난 후 궁금한 점이 생겨 질문드립니다. 예제 코드에서 '/', '/posts/{id}'라는 라우팅을 설정해 주셨는데요. 로컬 환경에서 학습한다는 기준으로 PHP 내장서버를 실행시켜 localhost:8000/index.php, localhost:8000/src/Database/Adaptor.php 등으로 접속했을 때에도 이에 대한 접근 불가 설정을 하지 않았으므로 접근이 허용되는 문제가 있었습니다. 이를 해결 하기 위한... 즉, 개발자가 정의한 URL 패턴 외 .php가 붙은 확장자로는 접근이 불가하게 설정할 수 있는 방법이 있을까요?
-
해결됨PHP 7+ 프로그래밍: 객체지향
Composer 설정 후 생성되는 .vendor 및 composer.json, composer.lock.json에 대한 질문입니다.
안녕하세요, Composer 강의를 학습하던 중 예제 코드들을 Git에 형상관리를 하려고 합니다. 다만, Composer 설정 후 생성되는 .vender 폴더, composer.json, composer.lock.json 파일의 경우 Git으로 형상관리를 시키는게 맞는지, 아니면 이들은 Ignore 설정을 통해 형상관리에서 제외시키는게 맞는지 궁금합니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
이 코드도 맞을까요?
안녕하세요 강사님! 강의 잘 듣고 있습니다 밑에 코드처럼 만들어봤는데 2번 채점에서 틀린결과라도 뜹니다. 혹시 이 코드에서 문제가 있는지 있다면 어디를 고쳐야하는지 궁금합니다! from collections import deque order = input() n = int(input()) for i in range(n) : cnt = 0 isTrue = False dq=deque(input()) for j in dq : if cnt < len(order) and j == order[cnt] : cnt+=1 if cnt == len(order) : isTrue = True print('#%d %s' %(i+1,'YES 'if isTrue else 'NO'))
-
미해결Typescript with Vue 실전 프로젝트
라우터 구조잡기 소스
안녕하세요.!! 라우터 구조잡기의 소스 받아 볼수 없을까요,,
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
cookie 공유 질문있습니다.
1. 로그인 후 새로고침을 하면 로그인이 풀립니다. 프론트 백 2. 브라우저 개발자도구의 application 탭 확인결과 프론트와 백에 Cookie가 있지 않습니다. if (process.env.NODE_ENV === 'production') { server.use(morgan('combined')); server.use(hpp()); server.use(helmet()); server.use( cors({ origin: 'http://www.coding-factory.site', credentials: true, }) ); } else { server.use(morgan('dev')); // 프론트에서 백엔드로 어떤 요청을 보냈는가 확인 server.use( cors({ origin: true, credentials: true, }) ); } ... server.use('/', express.static(path.join(__dirname, 'uploads'))); server.use(express.json()); server.use(express.urlencoded({ extended: true })); server.use(cookieParser(process.env.COOKIE_SECRET)); server.use( session({ secret: process.env.COOKIE_SECRET, resave: false, saveUninitialized: false, // proxy: true, // nginx express session cookie cookie: { httpOnly: true, secure: false, domain: process.env.NODE_ENV === 'production' && '.coding-factory.site', }, }) ); // 세션 활성화 server.use(passport.initialize()); // passport 구동 server.use(passport.session()); // 세션 연결 요청은 잘가며 로그인 시 유저의 정보도 reducer의 state에 잘 담깁니다. 허나 새로고침시 로그인이 풀리고 모든 것이 리셋 됩니다. backURL설정도 확인 결과 문제가 없습니다... 무엇이 문제인지 파악하기가 힘든데 ... 조언 주실수 있을까요? 로그인 시 networt 확인 결과 무슨 경고 창이 뜹니다. 찾아봤지만 해결을 못하고 있습니다...
-
미해결타입 파이썬! 올바른 class 사용법과 객체지향 프로그래밍
변수의 참조에 대해서 질문입니다.
안녕하세요? 강의 막바지에서 좀 헤매고 있네요 해당 강의에서 다른 분꼐서 질문하신 부분(https://www.inflearn.com/questions/332096)의 내용에 대해 추가로 질문을 드리려고 합니다. 해당 질문에서 선생님이 답변해주신 부분중 두번째 단락의 내용입니다. """ 2, 3. 이전 스텝에서 cur_node = self.head 로직이 수행되는 순간 cur_node는 self.head의 값인 Node(12)가 그대로 들어가는 것이 아니라 Node(12)의 메모리 주소값이 들어갑니다. 즉, 엄밀히 말하면, cur_node 변수는 Node(12)를 가리키게 되는 것이죠. (엄밀하게 self.head 또한 Node(12)를 가리킨 상태였던 것입니다.) 따라서 cur_node.pointer = new_node 를 하는 순간, (new_node == Node(5)) cur_nore는 Node(12)를 가리키므로 Node(12)의 poiner에 Node(5)가 들어갑니다. 그런데 self.head 또한 Node(12)를 가리키고 있으므로 self.head가 가리키는 Node(12)의 pointer가 Node(5)가 되어 결론적으로 self.head == Node(12, Node(5))가 되는 것입니다. """ 요약하자면, self.head와 cur_node모두 Node(12)를 보고 있었고, cur_node.pointer = Node(5)가 들어가서, self.head의 메모리 주소에 위치한 값이 Node(12,Node(5))가 되었다고 이해했는데요 이렇게 되는 이유를 제가 찾아보면서 정리했는데, 정리한 밑의 문장들이 맞는지 확인을 좀 받고 싶습니다. Node(12,none)는 인스턴스 객체이고, 해당 item이나 pointer의 값을 저장하는 인스턴스 객체의 네임스페이스는 딕셔너리이다. 딕셔너리는 mutable하기 때문에 해당 원소들 중 하나의 값이 바뀔 수 잇따(즉 원소의 값을 변화시켜줄 때, 다른 메모리 주소를 가진 새 변수로 만들어주지 않아도 된다) 따라서, Node(12,none)은 메모리 주소의 변화없이 Node(12,5)가 될 수 있고 slef.head가 참조하는 메모리 주소역시 그대로이므로, self.head == Node(12,5)가 된다. 반대로 말하면, 'self.head == 5'와 같이 immutbale한 자료형 값을 참조하고 있었더라면, 위와같은 코드는 성립하지 않는다.(self.head에 새로운 값을 할당시켜주기 위해서는 값이 새로이 생성되어야 하고, 값이 새로이 생성되면 메모리 주소역시 바뀌므로) 또 특정 값이 None이 된다는 것은, 해당 변수의 메모리 주소자체가 없어진다는 뜻으로 이해를 해도 될까요? 정말 마지막으로, 약간은 강의외적인 부분에 대해서(완전 상관없는 부분은 아닙니다) 질문을 좀 여쭙고 싶은데, 혹시 메일을 드려도 될까요? 좋은 강의 감사했습니다.
-
미해결스프링 MVC 1편 - 백엔드 웹 개발 핵심 기술
웹서버와 was에대해.. 제가 생각한게 맞나요?
제가 예를들어 타임리프를 활용해서 스프링 프로젝트를 만들었어요. 그러면 그 경우 was(스프링프로젝트자체가 was니까)와 db로만 웹시스템이 구성되어있는경우네요..??그런데 만약에 리액트를 도입을 해요리액트도 저번에 보니까 localhost:3000으로 접속하더라구요.. 이 의미가 웹서버를 띄운다는 의미인건가요?그럼 리액트랑 스프링을 사용하게되면 webserver가 리액트 was가 스프링인건가요? 사용자가 웹서버로 http요청을 받으면 웹서버인 리액트는 그 요청을 받아서 리액트에서 was 로 http요청을 보낸다. 그러면 스프링부트(was)에서 데이터와 함께 리액트로 응답을 보내고 리액트는 받은 데이터를 가지고 화면에뿌린다 가 기본원리인건가요?
-
미해결스파크 머신러닝 완벽 가이드 - Part 1
ipynb 파일을 databricks로 로드 하는 방법?
수업자료로 올려주신 ipynb 파일을 databricks로 직접 업로드할 수 는 없나요?
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
리덕스의 동작원리가 조금 헷갈립니다
useSelector((state)=>state.user.isLoggedIn)의 코드가 잘 이해가 가지 않아서 질문합니다. 동작은 잘됩니다. 하지만 동작이 왜 되는지 잘모르겠습니다. 왜냐하면 state를 import하지 않아서 위 코드에서 state를 어디서 읽어오는지를 아무리 생각해도 잘 모르겠습니다. 나름대로 이유를 생각해봤을때는 _app.js파일에 wrapper.withRedux로 감싸놓아 모든파일에 적용된게 아닐까 생각이 드는데 wrapper.withRedux의 역할도 정확히 모르겠습니다.. 위에 질문과 wrapper.writRedux의 역할을 설명해주실수 있으실까요?
-
미해결mongoDB 기초부터 실무까지(feat. Node.js)
toObject() 질문있습니다
안녕하세요 6버전부터는 toObject 호출해야된다고 하셨는데 붙여서 해보니 res.json() 결과가 오브젝트아이디만 응답해주더라구요 ~! 오히려 기존 user로 넣은게 유저데이터가 잘 나오는데 버전도 6버전인데 왜 이럴까요 ? 말씀하신 내용이 findById(userId) 여기서 찾은 userId가 실제로 여러가지 담고 있는 객체인데 생성할때는 아이디만 찾아줘서 넣어주고 클라이언트로 응답해줄땐 유저데이터를 다 같이 보내준다고 저는 이해했는데 이게 6버전으로 오면서 정확하게 유저데이터만 찾아줘야된다고 toObject() 붙였던게 아닐까요 ? 왜 붙이니깐 클라이언트 응답에 오브젝트 아이디만 갈까요 ? toObject() 붙인거 const blog = await new Blog({ ...req.body, user: user.toObject() }) //결과 { "title": "to obj 444", "content": "hoho test content", "isLive": true, "user": "61c083ebe39f17bf68fb49e9", "_id": "621132283a6f2a42e78e4a61" } 기존 const blog = await new Blog({ ...req.body, user }) //결과 { "title": "to obj 333", "content": "hoho test content", "isLive": true, "user": { "name": { "first": "333", "last": "33333333333" }, "_id": "61c083ebe39f17bf68fb49e9", "username": "333", "age": 30, "email": "jjongrrr@naver.com333", "createdAt": "2021-12-20T13:23:55.297Z", "updatedAt": "2021-12-20T13:23:55.297Z", "__v": 0, "array": [] }, "_id": "62113070bec114bccbc7da6b" }
-
해결됨비개발자를 위한 RPA 강의 (UiPath 입문편)
데이터스크래핑 질문
안녕하세요. 좋은 강의 열심히 보고 있습니다 :) 네이버데이터랩에서 데이터 스크래핑으로 값을 가져오는데 분명 글자를 지정하였음에도 불구하고 숫자와 같이 긁어와집니다 글자만 가져올 수 있는 방법이 있을까요??
-
미해결
An overview of pre-settlement funding: what it is, how it works, and when it might be appropriate to consider it
Pre-settlement funding, also known as lawsuit funding or legal financing, is a type of financial assistance that is provided to plaintiffs who are pursuing a legal claim or lawsuit. It is designed to help plaintiffs cover their living expenses and other costs while they wait for their case to be resolved.There are several different types of pre-settlement funding, including cash advances, structured settlements, and non-recourse loans. Cash advances are typically the most common form of pre-settlement funding, and they involve the plaintiff receiving a lump sum of money in exchange for a percentage of their future settlement or judgment. Structured settlements involve the plaintiff receiving regular payments over time, while non-recourse loans require the plaintiff to repay the loan only if they win their case.Pre-settlement funding can be a helpful option for plaintiffs who are experiencing financial difficulties while their case is pending. It can provide the necessary funds to cover things like rent, groceries, and medical bills, and can help plaintiffs avoid having to settle their case prematurely due to financial pressure.There are several factors that plaintiffs should consider when deciding whether or not to pursue pre-settlement funding. One of the most important is the terms of the funding agreement, including the amount of the advance, the percentage of the future settlement or judgment that will be paid to the funding company, and any fees or interest that may be charged. It is also important to consider the strength of the plaintiff's case, as well as the likelihood of success and the potential amount of the settlement or judgment.In addition to these considerations, plaintiffs should also be aware of the potential risks associated with pre-settlement funding. For example, if the plaintiff loses their case, they may be required to repay the advance, which could be a significant financial burden. Additionally, pre-settlement funding may also impact the plaintiff's negotiating power in settlement negotiations, as the funding company may seek to recoup their investment from the settlement or judgment.Overall, pre-settlement funding can be a helpful option for plaintiffs who are facing financial difficulties while their case is pending. However, it is important to carefully consider the terms of the funding agreement, the strength of the plaintiff's case, and the potential risks before deciding whether or not to pursue this type of financial assistance.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
제로초님,
제로초님, npm run dev를 쳐서 로컬서버를 실행했는데 Internal Server Error 라고 뜨고 페이지가 안나옵니다ㅠㅠ 혹시 어떤것때문인지 알려주실 수 있으실까요?
-
미해결[D.P.(DappProject)] 디앱 프로젝트(NFT 생성, NFT 구매 및 판매)
remixd 로컬 연동 오류
remixd 별도로 설치하여 진행 중인데.. 로컬 cmd에서는 서비스가 잘 올라간거 같은데, 연결이 안된다고 계속 뜨네요... 어떻게 해결해야 할까요..? remix ide 화면에서 표출되는 로그는 Cannot connect to the remixd daemon. Please make sure you have the remixd running in the background. 입니다.
-
미해결따라하며 배우는 노드, 리액트 시리즈 - 쇼핑몰 사이트 만들기[전체 리뉴얼]
안녕하세요 코드 질문입니다.
혹시 강의 중 아래와 같이 사용 된 코드를 아래처럼 고쳐도 될까요? 기능적으로 동일하다고 생각들지만 혹시 동일하지 않은데 제가 모르는 것일수 있다고 생각하여 그렇습니다. 또한 1번사진 {}를 안써준 이유가 쓰지않아준다면 바로 return을 해주는 형식이라이라고 알고있는데, 만약 {return}의 형식으로 바꿔주고자 한다면 어떻게 수정을 해야할까요?
-
미해결설계독학맛비's 실전 FPGA를 이용한 HW 가속기 설계 (LED 제어부터 Fully Connected Layer 가속기 설계까지)
AI HW설계 강의자료
안녕하세요 맛비님 Verilog 강의와 FPGA강의 들어보면서 동시에 AI HW 강의를 들어보려고 하는데 혹시 AI HW 강의자료를 얻을 수 있을까요? FPGA수강자에게는 제공해주신다는 글을 봐서 말씀드려봅니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
엔티티와 dto
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요. 예전 스프링 강의에서 김영한님이 컨트롤러는 DTO , entity 둘다 의존해도 되지만, domain( entity, domain , service) 은 dto를 의존하면 안된다고 배웠습니다, 의문이 있는게 다대일 상황, 게시판을 예로 들 때 post(게시글) 1 : N file(멀티파일) 이런식으로 있고 파일이 @ManyToOne으로 post를 가지고 있고 파일이 연관관계의 주인이 되겠다 생각 했습니다 이 때 게시글을 저장 할 때 파일도 같이 저장 되어야 하는데 postService에 @Transactional을 걸어두고 @Transactional public void save( Post post , List<File> file){ 1. // 게시글을 먼저 저장 한후 Post savePost = postRepository.save( post ) ; 2. //File 엔티티에 savePost를 넣어줘서 save File file = File.builder().post(savePost).build(); fileRepository.save(file); } 이런식으로 넣어줘야 한다고 생각하는데 문제인게 이미 컨트롤러 단에서 dto로 받아온 파일 정보를 빌더를 사용해서 엔티티로 컨버팅 해서 서비스단에 넘겨줬기 때문에 서비스 단에서 저장해서 새로 생성 된 게시글을 파일에 못넘겨 줍니다 강의를 바탕으로 제가 잡은 기준은 1. 도메인은 dto를 의존 하면 안된다 -> 컨트롤러단에서 dto를 entity로 컨버팅 2. 엔티티에 setter를 쓰지마라 -> 빌더패턴사용 3. @ManyToOne을 잡은곳 ( file )에서 데이터를 관리해라 이런식으로 트랜잭션으로 테이블 두개에 한번에 인서트를 날릴때 연관관계가 걸린 엔티티를 넣어줘야 하는데 이럴 때 파일에 연관관계 메서드를 추가하는게 맞을까요?
-
미해결[유니티 레벨 업!] 모듈식으로 개발하는 퀘스트&업적 시스템
TaskTarget을 할떄
Object 형식을 사용하는데 이러면 박싱이 일어나서 안좋지 않을까요?? 실무에서 최적화를 한다고할때 괜찮은지 궁금합니다.
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
15분 질문입니다.
지금 초기화부분 (init에서) 먼저 등록을 해주고 pending이 false이면 OnAcceptCompleted를 호출을 할 것이고 pending이 true라면 이부분에서 자동적으로 OnAcceptCompleted를 호출한다고 하셨는데 args.Completed += new EventHandler<SocketAsyncEventArgs>(OnAcceptCompleted); 이부분이 args의 Compledted함수에서 응답(액션같은게 오면) OnAcceptCompleted 함수를 부르겠다(콜백하겠다) 의미까는 이해가 갔습니다. 그런데 궁금한것이 pending이 true일 경우 자동적으로 OnAcceptCompleted 호출한다는 말씀이 무었인지 잘 이해가 안갑니다. 1) 번질문 SocketAsyncEventArgs args = new SocketAsyncEventArgs();를 init에 만들어 주고, RegisterAccept에서 _listenSocket.AcceptAsync(args); 하게 되면, false인지 true인지를 pending에다가 뱉어주는데 true일 경우에 args.Completed함수에 EventHander라는 액션이 가게 되어 callback으로 등록해둔 함수가 호출이 되는 것인가요? 2)번질문 만약, 1)번에서 질문 한 내용이 맞다면 args.Completed += new EventHandler<SocketAsyncEventArgs>(OnAcceptCompleted); 한 이유는 AcceptAsync(args);했을 때 true가 나오면 Completed함수가 자동으로 호출이 된다는 말씀이신가요? 3) 번질문 제가 1), 2)번 질문의도나 이해 방향이 틀렷다면 그냥 간단하게 생각해서 bool pending = _listenSocket.AcceptAsync(args);를 해주는 순간 pending이 false이면 if (pending == false) OnAcceptCompleted(null, args); 이대로 가는 것이고 pending이 true일 경우 AcceptAsync에 인자로 넣은 args에 EventHandler? 가 true라고 args의 Complete함수에 알려주는 것인가요? 4)번질문 제가 Completed에 뭔가 액션이 오면 콜백으로 OnAcceptComplete를 호출하는 것은 이해를 했는데, pending이 true일 경우 args.Completed함수에 액션이 어떻게 Completed 가게되어지는지를 조금 이해가 안되는데 이부분은 제가 콜백을 이해를 못한것인가요? 아니면 args가 어떻게 동작하는지 아직 이해를 못해서 그런것인가요??