묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
우분투 환경에서 sequelize문제입니다.
안녕하세요~ 우분투 환경에서 api 서버와 db연동을 위해 강의에서 하시던대로 mysql 8버전을 설치후 테이블명이 다 대문자로 생성되어서 db를 drop시키고 다시 reload all했으나 재생성이 되지 않았습니다. npx sequelize db:create로 만들면 테이블명이 무조건 대문자로만 만들어집니다.ㅠㅠ 다시 drop시키고 npx pm2 reload all로 재실행하여도 db가 생성이 되지 않는데 이유가 무엇일까요?.. db가 있으면 그냥 넘어가고 없으면 생성하는 걸로 알고있었는데 맞나요? const express = require("express"); const cors = require("cors"); const session = require("express-session"); const cookieParser = require("cookie-parser"); const postRouter = require("./routes/post"); const postsRouter = require("./routes/posts"); const userRouter = require("./routes/user"); // models/index.js에서 model이 등록된 sequelize를 가져옴 const db = require("./models/index.js"); const passport = require("passport"); const passportConfig = require("./passport"); const dotenv = require("dotenv"); const morgan = require("morgan"); const path = require("path"); const hpp = require("hpp"); const helmet = require("helmet"); dotenv.config(); const app = express(); //sequelize.sync() => Promise기반 함수 db.sequelize .sync() .then(() => { console.log("db 연결 성공!"); }) .catch(console.error); passportConfig(); if (process.env.NODE_ENV === "production") { app.use(morgan("combined")); // 자세한 로그( 접속자의 ip도 나옴 ) app.use(hpp()); app.use(helmet()); app.use( cors({ origin: "http://sonteve.kr", credentials: true, }) ); } else { app.use(morgan("dev")); // 개발모드에서만 로그 찍어줌 (디버깅 편함) app.use( cors({ // credentials : true일때는 모든도메인허용불가하므로 정확한 도메인을 적어주어야한다. 또는 origin: true 로 해준다. origin: true, // 모든 도메인으로 부터의 요청 허용 (도메인이 다르면 cors에러가남.) 프론트를 3060 백은 3065이기때문 credentials: true, // 도메인이 다르면 쿠키가 전달이 안되는데 쿠키를 보내려면 credentails를 true로 해줘야함. // front에서는 axios요청의 세번째 인자로 { withCredentials: true} 를 넣어줘야 쿠키가 동봉된다. }) ); } // 프론트에서 body에 보내온 데이터를 해석해준다. // 라우터에 걸리면 미들웨어가 종료되기때문에 상단에 위치시켜준다. // app.use("/", express.static(path.join(__dirname, "uploads"))); => localhost:3065/이미지파일.png (프론트에서 서버쪽 폴더구조 모르게할 수 있다.) app.use("/", express.static(path.join(__dirname, "uploads"))); // __dirname(back)과 uploads경로를 합쳐준다. 운영체제 마다 경로가 차이나기때문에 path.join을쓴다. app.use(express.json()); // json으로 넘어오는 데이터를 해석 해서 req.body에 넣어준다. (axio를 통해 받을때) app.use(express.urlencoded({ extended: true })); // form submit시의 데이터를 해석해서 req.body에 넣어 준다 . (일반 form데이터를 받을때) /*쿠키에 랜덤한 문자열 정보를 넘기고 브라우저에서 서버로 요청할때 쿠키를 담아서 보내면 그 랜덤한 문자열에 해당하는 정보를 찾는다.*/ app.use(cookieParser()); app.use( session({ saveUninitialized: false, resave: false, secret: process.env.COOKIE_SECRET, cookie: { httpOnly: true, secure: false, domain: process.env.NODE_ENV === "production" && ".sonteve.com", }, }) ); app.use(passport.initialize()); app.use(passport.session()); app.get("/", (req, res) => { console.log("hellonode"); res.send("hello express"); }); app.use("/post", postRouter); app.use("/posts", postsRouter); app.use("/user", userRouter); // 에러처리 미들웨어 존재하는부분 /* (기본 에러표시를 바꾸고 싶다면 생성해서 사용한다.) app.use((err,req,res,next) => {}) */ app.listen(80, () => { console.log("3065포트에서 대기중"); });
-
미해결비개발자를 위한 RPA 강의 (UiPath 입문편)
글씨쓰기도 가능한가요
서명하는 팝업창에 서명글씨를 쓰는 기능을 만들수 있나요
-
미해결[개정판] 파이썬 머신러닝 완벽 가이드
안녕하세요
안녕하세요 선생님 강의 잘 보고 있습니다. 다름이 아니고 "평가 3.6장, 피마 인디언 당뇨병 예측"을 공부 하고 있습니다. 여기서 Glucose, BloodPressure, SkinThickness...등 0으로 기록된 값이 있어서 책에서는 이것들을 평균으로 바꿔서 모델의 예측 성능을 높히셨는데 저는 좀 더 나아가보고자 저 값들을 그냥 평균으로 바꾸지 않고 해당 나이대에 비슷한 평균값으로 바꾸고 싶어서 나름 이리저리 코드를 굴려봤는데 잘 안되서 도움 요청을 드리고 싶습니다. 1. 나이는 실수값이라서 lamba 식을 이용해서 "Age_cat"를 따로 만들었습니다. 2. 만약 index=4의 사람의 insulin이 0이면 "그 해당 사람의 나이대에 맞는 값의 평균"으로 바꾸고자 하는 코딩이 for feature in zero_feature....부분 부터입니다. 한번에 적용하는 방법을 모르겠어서 이중 for문으로 구현해봤는데 어디가 오류인지 잘 모르겠네요. 3. 혹시 제가 구현하려는 방식보다 더 쉽고 간편한 방식이 있으시면 알려주시면 감사하겠습니다 ㅠㅠ 질문이 길어서 죄송합니다
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
create 메서드 관련 질문드립니다.
수업시간에 만들어본 create 메서드는 HTML form태그로 보낸 요청에 제대로 동작했습니다. 그래서 postman에서 요청을 보내도 잘 될거라 생각했습니다. 그런데 제대로 동작하지 않더라구요. 구글링을 해보니 파라미터에 @RequestBody 를 붙여야 한다는 내용을 찾았습니다. 따라하니까 제대로 동작하긴 하는데, HTML form을 통해 전달받는것과, 외부 api 테스팅 도구로 body에 값을 넣어서 전달하는게 어떤 차이가 있는지 궁금합니다. 더불어 @RequestBody가 어떤 역할을 하는지도 궁금합니다!
-
미해결인터랙티브 웹 개발 제대로 시작하기
선생님이 하신 이미지는 가로 로 이미지가 나열 되어있는데 만약 이미지들이 위아래로 있으면 어떻게 하는게 좋을까요
각각의 이미지의 위치를 퍼센테이지로 적용 해서 이미지를 하나나 지정해줘야 할까요? steps를 사용 할수 없는것 같아서 질문 드립니다.
-
미해결코로나맵 개발자와 함께하는 지도서비스 만들기 1
오류가 나는데 어떻게 해야 하나요??
(사진)
-
미해결스프링 데이터 JPA
안녕하세요. 질문 드립니다.
안녕하세요. 단방향으로 설정시 관계 테이블이 보이고, 양방향 설정시 관계 테이블이 보이지 않습니다. 이게 정상인건가요? 제가 제대로 했는지 의심이 들어서 질문드립니다. [단방향] Schema | Name | Type | Owner --------+----------------+-------+------------ public | course | table | jihuni1026 public | member | table | jihuni1026 public | member_courses | table | jihuni1026 [양방향] Schema | Name | Type | Owner --------+----------------+-------+------------ public | course | table | jihuni1026 public | member | table | jihuni1026
-
해결됨실전! 스프링 부트와 JPA 활용2 - API 개발과 성능 최적화
@Transactional의 범위
여기서 =======의 사이에 select 쿼리가 나가야 할것 같은데 안나가네요... memberService.update 메소드 호출해서 update 메소드의 @Transactional로 트랜잭션이 시작하고 메소드가 종료되면 트랜잭션이 끝나서 영속성 컨텍스트가 사라지는거 아닌가요?? 그렇다면 memberService.findOne 메소드를 호출시 영속성 컨테스트는 아무것도 없으니 select 쿼리 날려서 해당 엔티티를 영속화 시켜야 하는거 아닌가요?
-
해결됨인터랙티브 웹 개발 제대로 시작하기
화면 rotate질문이요!
rotate할때 mousePos 객체를 생성해서 하셨는데, translateZ에 zMove변수를 넣어준것처럼 rotate에 객체속성을 호출하는게 아니라 변수를 넣어주면 안되는건가요??
-
미해결공공데이터로 파이썬 데이터 분석 시작하기
안녕하세요 선생님
안녕하세요, 인프런에 대표 강의 2개가 있으신데 이 강의와 "단 두 장으 문서로 데이터 분석과 시각화 뽀개기" 두 강의의 차이가 무엇인가요. 둘다 들어야하는지.. 현재 이 강의를 들으면 "단 두장"은 안들어도 무방한가요!?
-
미해결스프링 핵심 원리 - 기본편
잘보겠습니다
기다렸는데 바로 구매했습니다 잘보겠습니다 ㅎ
-
미해결반응형 웹사이트 포트폴리오(Architecture Agency)
수업자료 다운 질문입니다.
안녕하세요 수업자료는 어디서 다운받는건가요? ㅠㅠ 아무리 찾아봐도 강의 우측에 수업자료 버튼이 없어서요..
-
미해결Redux vs MobX (둘 다 배우자!)
액션 생성자 함수에 관하여
먼저 퀄리티 좋은 강의 감사합니다. 제 질문은요 강의중 액션생성자 함수부분에서 dispatch로 저 액션생성자함수인 changeCompA라는 함수를 넣고 파라미터로 넣으면 그 파라미터가 데이터 이잖아요. 그런데 제가 여기서 의문점이 든게 reducer라는 것에서 case 즉 type을 적어주셨는데 밑에 있는 객체생성자 함수로는 type까진 바꿔주지 않게 되는데 type도 파라미터로 넣어주고 작성해주어야되는게 아닌가요... ㅠㅠ const changeCompA = (data) => { return { //action type: "CHANGE_COMP_A", data, }; };
-
해결됨단 두 장의 문서로 데이터 분석과 시각화 뽀개기
NaN과 Blank의 차이점 문의
강사님 질문의 꼬리를 물어서 죄송해요^^ 우선 강사님 조언대로 적용 해보았는데, df['입금'] = df['입금'].str.replace(',','') - 성공 df['입금'] = df['입금'].fillna(0) - 에러없이 작동했는데,df 불러오면 blank 그대로 나옵니다. 0이 아니라.. df['입금'] = df['입금'].astype('int64') - 에러 메세지 invalid literal for int() with base 10: '' 강사님 말씀하신 결측치 때문인거 같아서. pd.to_numeric으로 해보았습니다. df['입금'] = pd.to_numeric(df['입금']) - Data type float으로 변경 및 Blank 값이 NaN으로 변경 df['입금'] = df['입금'].astype('int64') - 에러 메세지 Cannot convert non-finite values (NA or inf) to integer 그래서 fillna(0) 하고나서 NaN이 0으로 변경후에 astype(int64)를 해주니 변경이 되었습니다. 아래와 같은 의문점이 들어서 질문 드립니다. 1. Blank와 NaN은 다른 건지요? 강사님이 말씀하신 결측치는 Blank인가요. 아님 NaN인가요? 판다스에서는 isnull 메소드 적용시 NaN 값은 인지(True) 하고. Blank는 결과를 못가져 오더라고요. 2. pd.to_numeric 은 float으로 항상 변환해 주는 건지요? 소숫점이 있어서 금액(원화) 하고 맞지 않아서 int로 변경해야 하는데, 결측치를 0으로 만들지 않고(그냥 NaN 유지) int 변경하는 방법은 없는지요? 질문의 의도가 문제를 쉽게 처리하려는 마음은 아니고, 제가 모르는 해결책이 있나 싶어 질문 드립니다.
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
getServerSideProps에서 context.store.dispatch를 이용해 redux store에 state를 가져오는 과정에서 질문이있습니다.
안녕하세요. 제로초님! 현재 회사 프로젝트를 노드버드 강의를 참고하여 만들어보았습니다. 그런데 아래와같이 getServerSideProps을 이용해 서버사이드렌더링일때 디스패치 함수를 실행시켜 redux store에 state를 가져와 입력해주는 부분에서 속도가 너무 느려 초기 로딩속도가 너무 오래걸리는데 해결방법을 모르겠어서 질문드렸습니다.. 어떤방법으로 해결해야 서버사이드렌더링에서 로딩속도가 오래걸리는 부분을 해결할 수 있을까요?.. const cookie = context.req ? context.req.headers.cookie : ''; const { id } = context.query; axios.defaults.headers.Cookie = ''; if (context.req && cookie) { axios.defaults.headers.Cookie = cookie; } context.store.dispatch(getFollowersRequest({ userId: id })); context.store.dispatch(getFollowingsRequest({ userId: id })); context.store.dispatch(getUserPaperRequest({ id })); context.store.dispatch(getCarrerListRequest({ userId: id })); context.store.dispatch(getUserInfoRequest(id)); context.store.dispatch(getUserInfoRequest()); context.store.dispatch(END); await context.store.sagaTask.toPromise();
-
해결됨실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
repository랑 service 개념 질문입니다.
1. 제가 DAO라는 방식으로 먼저 배워서 repository를 DAO라고 생각하고 이해하고 있는데요. 이게 맞는건가요? 2. repository로 바로 비즈니스로직을 수행을 해도 되는데 service로 나눠준 이유는 사용자들이 동시에 사용할 수 있게 하기 위한거라고 알고 있는데 이게 맞는건가요?
-
미해결웹 게임을 만들며 배우는 자바스크립트
어떻게 인덱스가 출력이 되는건지 이해가 안됩니다ㅠㅠ
forEach에 들어간 함수에서 인덱스가 대체 어떻게 출력되는건지 이해가 잘 안됩니다ㅠㅠㅠ2번째 파라미터로 넣어준건 자동으로 인덱스가 되는건가요??
-
미해결현존 최강 크롤링 기술: Scrapy와 Selenium 정복
셀렉터 질문 드립니다.
안녕하세요. 오늘 강의와는 크게 상관이 없는데, 유용하게 느껴져서 질문드립니다. id가 있는 것만 선택할 경우 [id] 이런식으로 처리되는데, 클래스에는 적용이 되지 않는 것 같더라고요. 클래스가 있는 태그만 뽑아내는 것도 가능한가요?
-
해결됨데브옵스(DevOps)를 위한 쿠버네티스 마스터
선생님 질문 있습니다.
두가지가 있는데 1. vmware 우분투 18.04로 실습하고나서 다음날 새로 켯을때 master, worker1, worker2 셋다 kubectl 작동이 거부되었습니다. 그래서 인터넷에 찾아보니 https://github.com/kubernetes/kubernetes/issues/58988 저랑 같은 현상이라 참고하여 댓글에 따라 트러블 슈팅하였는데 안되더라구요. 이중에 kubelet을 사용하여야된다고 적혀있는데 아직 배우지 않아서 다른방법이 있을까 하여 질문드립니다. 2. 현재 실습과정에서 엔드포인트가 찍히지 않은 현상이 발생하여 질문드립니다. gcp로 진행중인데 똑같이 진행하였으나 안되서 더이상 진행이 안되더라구요 어떻게 해야되나요?
-
해결됨단 두 장의 문서로 데이터 분석과 시각화 뽀개기
데이터 전처리중 invalid literal for int() with base 10: '' 에러 문제
안녕하세요. 강사님 표제 관련하여 현장 업무 적용해 보려고 하는데, 제목과 같은 에러가 떠서요. 기본 Data set은 아래와 같고요. 입금 부분을 아래와 같이 천단위 없이 변경하려고 하였는데, 제목과 같은 에러가 떠서요. df type은 object입니다. df['입금'] = df['입금'].str.replace(',','').fillna(0).astype('int64') 인터넷을 찾아보니, Blank로 되어 있어서 그렇다고 하는데 , Fillna(0)이 있으면 해당 칼럼을 전부 0으로 바꾸어 주는 것이 아닌지요. 강의 들을 때와 다르게 실제 파일 적용하려니 상황이 달라서 그런지 시각화 하기도 전부터 막힙니다. 도와주세요.