묻고 답해요
160만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결타입스크립트 입문 - 기초부터 실전까지
마우스 갖다대면 리턴값 설명 나오는 거 질문드려요
마우스 갖다대면 리턴값 없다고 떠야하는데 뜨지않네요. 어디를 설정해야할까요? 아래 캡쳐(강의모습)처럼 떠야하는데 그렇게 안뜨네요 ㅠ
-
미해결[리뉴얼] React로 NodeBird SNS 만들기
회원가입 status 500 findOne 오류
안녕하십니까 제로초님 회원가입 구현 관련 질문드립니다.강의를 보며 코딩을 하였고 오타도 없는 것을 확인을 했습니다.그런데 response로 계속 500이 들어오며 findOne 관련 오류가 납니다.. 혹시 해결책을 알수있을까요?models/user.js//model은 mysql의 테이블과 같은 개념이다. module.exports = (sequelize, DataTypes) => { const User = sequelize.define( //여기서 User는 모델이름 => 자동으로 소문자화되고 복수형이 된다. ex)users "User", { //id는 mysql에서 자동으로 넣어주기 때문에 필요없다. email: { type: DataTypes.STRING(30), //STRIN, INTEGER, BOOLEAN, FLOAT, DATATIME 등이 자주 사용된다. //이메일은 문자열이고 30글자 이내여야한다. allowNull: false, //false면 필수 -> 무조건 입력해야함. unique: true, //이메일은 고유한 값이어야함. 중복값이 있으면 안된다. }, nickname: { type: DataTypes.STRING(30), allowNull: false, //false면 필수 -> 무조건 입력해야함. }, password: { type: DataTypes.STRING(100), //비밀번호는 암호화를 하게되면 길이가 늘어나기 때문에 여유있게 100글자 allowNull: false, //false면 필수 -> 무조건 입력해야함. }, }, { charset: "utf8", collate: "utf8_general_ci", //한글 저장 } ); User.associate = (db) => { db.User.hasMany(db.Post); //한 사람이 포스트를 여러개 가질 수 있음 db.User.hasMany(db.Comment); //한 사람이 댓글 여러개 가질 수 있음 db.User.belongsToMany(db.Post, { through: "Like", as: "Liked" }); //게시글 좋아요와 유저는 다대다 관계, 중간 테이블으 이름은 Like db.User.belongsToMany(db.User, { through: "Follow", as: "Followers", foreignKey: "FollowingId", }); db.User.belongsToMany(db.User, { through: "Follow", as: "Followings", foreignKey: "Followerid", }); //내가 팔로잉하는 사람을 찾으려면 나를 먼저 찾아야 한다. }; return User; };routes/user.jsconst express = require("express"); const { User } = require("../models"); const router = express.Router(); const bcrypt = require("bcrypt"); router.post("/", async (req, res, next) => { // POST /user/ try { const exUser = await User.findOne({ where: { email: req.body.email, }, }); if (exUser) { return res.status(403).send("이미 사용 중인 아이디입니다."); //여기서 리턴을 해주지 않으면 밑에 있는 res.json() 과 더불어서 응답이 두번이라 안된다. } const hashedPassword = await bcrypt.hash(req.body.password, 12); await User.create({ //순서를 맞춰주기 위한 Await //테이블안에 데이터 넣기 email: req.body.email, nickname: req.body.nickname, password: hashedPassword, //여기서 req.body가 프론트엔드 Signup에서 보낸 action.data와 같다. }); res.status(201).send("ok"); } catch (error) { console.error(error); next(error); // status 500 } }); module.exports = router;back/app.jsconst express = require("express"); const cors = require("cors"); const postRouter = require("./routes/post"); const userRouter = require("./routes/user"); const app = express(); const db = require("./models"); db.sequelize .sync() .then(() => { console.log("db 연결 성공"); }) .catch(console.error); app.use(express.json()); app.use(express.urlencoded({ extended: true })); //여기서 use는 express서버에서 뭔가 장착한다는 뜻 //또한 이 두 문장이 프론트에서 받아온 action.data를 req.body에 넣어준다는 뜻 app.get("/", (req, res) => { res.send("hello express"); }); app.get("/api", (req, res) => { res.send("hello api"); }); app.get("/api/posts", (req, res) => { res.json([ { id: 1, content: "hello" }, { id: 2, content: "hello2" }, { id: 3, content: "hello3" }, ]); }); app.use( cors({ origin: "*", //모두 허용 credentials: false, }) ); app.use("/post", postRouter); //"/post"가 중복되므로 앞으로 뽑아줄 수 있다. app.use("/user", userRouter); app.listen(3065, () => { console.log("서버 실행 중"); });
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
cascade = CascadeType.ALL을 설정하지 않고, orphanRemoval = true만 설정하였을때 DELETE 쿼리가 나가지 않는 이유
@Entity public class Parent { @OneToMany(mappedBy = "parent", orphanRemoval = true) private List<Child> childList = new ArrayList<>(); public void addChild(Child child) { childList.add(child); child.setParent(this); } }부모객체의 cascade는 설정하지 않고, orphanRemoval옵션만 true로 설정하였습니다.Child child1 = new Child(); Child child2 = new Child(); Parent parent = new Parent(); parent.addChild(child1); parent.addChild(child2); em.persist(parent); em.persist(child1); em.persist(child2); em.flush(); em.clear(); Parent findParent = em.find(Parent.class, parent.getId()); findParent.getChildList().remove(0); tx.commit();cascade = CascadeType.ALL을 설정하지 않았으므로 parent, child1, child2 모두 persist해주었고,영속성 컨테이너를 비운 다음 find로 DB에서 데이터를 가져와 findParent 객체를 만든 후, 0번 인덱스의 child1를 제거하였습니다.여기서 부모와의 연관관계가 끊어진 child1은 DB에서 삭제될 것으로 생각하였습니다. 하지만데이터가 아직 존재하는걸 확인하였습니다. [추가] em.flush를 마지막에 넣어주면 삭제가 되는 것을 확인하였습니다. 그냥 commit과 commit전에 flush를 한번 더 해주는 것과 어떤 차이가 있는 걸까요..?
-
해결됨두고두고 써먹는 유니티 VR
윈도우 빌드를 했는데 퀘스트랑 연동이 안됩니다.
윈도우 빌드로 빌딩을 하고 퀘스트를 써서 해보려고 하는데진행이 안되서 다른 설정을 해줘야 하는지 궁금합니다.관련된 사이트 링크라도 아시면 공유 해주시면 감사하겠습니다. 빌드 이후에 어떻게 해야하는지 자료가 없네요 다 APK로 빌드를 뺴네서 하는데 제가 하고 싶은것은 PC로 빌드해서 퀘스트에서 진행 하는것입니다.
-
해결됨Spring Cloud로 개발하는 마이크로서비스 애플리케이션(MSA)
docker 환경에서 eureka 대시보드 작동
8761:8761 로 포트 바인딩해서 정상 기동했고, docker log 에서도 정상적으로 기동해서 문제없어보이는데, 브라우저로 대시보드 웹페이지 접근하면 "ERR_EMPTY_RESPONSE" 로 나옵니다. 도원님 이미지로 기동해도 똑같은 현상입니다...!
-
미해결[웹 개발 풀스택 코스] Node.js 프로젝트 투입 일주일 전 - 기초에서 실무까지
mysql 챕터에 있는 테이블은 도대체 어디에 있는가??
수업자료 라고 링크 걸려 있는 곳에도 없고..테이블을 화면 보고 알아서 만들라는 건가..내가 못 찾는 건가..
-
해결됨동영상으로 배우는 Catia Part Design Workbench(Catia V5-6R2017), Part 1
안녕하십니까 교수님
CATIA PART DESIGN1 5강에서 교수님과 똑같은 설정값으로 Pad Think 기능을 사용하였는데 “Parallel operator, the extrapolated parallels do not intersect- there is maybe a sharp angle and an outside parallel.” 라고 뜨면서 계속 진행되지 않습니다. 어떤 점이 문제인걸까요??
-
미해결홍정모의 따라하며 배우는 C언어
헤더파일
9.11 3:48 질문입니다 저는 새항목 추가하면 오른쪽처럼 뜨거든요 무슨 문제가 있는걸까요..?
-
해결됨독하게 시작하는 C 프로그래밍
기본 환경이 windows11 인데, windows10이어도 상관없나요?
안녕하세요. 독하게 시작하는 C~ 수강자입니다.설치환경을 보니 windows 11 인데, 혹시 windows 10 환경도 상관이 없을까요?노트북이 구형이고 아직 windows 10 을 사용해야 되는 이유가 있어서 11로 업그레이드가 불가능한 상황입니다. 감사합니다.
-
해결됨디지털포렌식 입문자를 위한 디지털포렌식 전문가 2급 실기 시험대비 강의(Encase/Autopsy)
질문 있습니다.(실제 시험에서 autopsy의 분석 소요 시간)
안녕하세요. 강의 잘 듣고 있습니다. autopsy를 통해 시험을 준비하려고 하는데, 강의에서 알려주신 분석항목을 설정해서 이미지 분석을 돌렸을 때 시간이 얼마나 걸렸다는 내용을 들으신게 있으실까요? 아무래도 실제 문제는 예제 이미지보다 시간이 더 걸릴 것으로 예상되는데, 그 부분이 가장 불안하네요...ㅠㅠ
-
미해결[입문자를 위한 UE5] Part2. 언리얼 엔진 2D 게임 개발 입문
PaperZD
Top Down.PaperZD.애니메이션 적용이 된 마우스 클릭 이동에 관한 영상 올려 주실 수 있나요?
-
미해결입문자를 위한 코딩테스트 핵심(이론과 문제풀이) [Python]
선생님 enumerate 를 사용해서 푸는 것과 차이가 있을까요?
저는 선생님과는 다르게 enumerate() 를 사용해서 풀었는데요!혹시 선생님이 푼 방법과 제가 푼 방법중 좀더 효율적이고 좋은 코드는 어떤것인가요? 차이가 좀 궁금합니다. def solution(nums): answer = 0 min = 100_000 for idx, _ in enumerate(nums): if nums[idx] < min: answer = idx min = nums[idx] return answer print(solution([7, 10, 5, 3, 2, 15, 19])) print(solution([-12, 12, 30, -15, -5, 3, 9, -11, 14])) print(solution([17, 11, 5, 8, 23, 29, 19, 12, 25, 16, 2])) print(solution([7, 5, 12, -9, -12, 22, -30, -35, -21]))
-
미해결다양한 사례로 익히는 SQL 데이터 분석
주문별 연관상품 추출 SQL 관련 문의
안녕하세요?주문별 연관 상품 추출 SQL에서SELECT a.order_id, a.product_id, b.product_id from ga.order_items a join ga.order_tems b on a.order_id = b.order_id where a.product_id <> b.product_id위 코드와 같이 where 절 안에서 같은 product_id가 조인 되는 경우를 filtering 하였습니다.혹시 join 조건절에서(아래 sql과 같이) filtering 하지 않고 where 절에서 하는 이유가 있을까요?SELECT a.order_id, a.product_id, b.product_id from ga.order_items a join ga.order_tems b on a.order_id = b.order_id and a.product_id <> b.product_id
-
미해결[딥러닝 전문가 과정 DL1101] 딥러닝을 위한 파이썬 레벨1
슬랙 커뮤니티 신청법
다른 분들이 댓글 남겨주신 것을 보니 슬랙에서 커뮤니티가 있는 것 같은데 어떻게 참여할 수 있을까요??메일은 seongji.jo@thinkingwolf.co.kr 입니다 추가로 지금 파이썬 1 강의를 듣고 있는데 파이썬 연산이 실제 값과 차이가 있다고들 하던데 저도 예제를 풀면서 값이 피피티 슬라이드와 다르게 나오네요. 해결법이 있을까요??score1, score2, score3 = 10, 20, 30n_student = 3score_mean = (score1 + score2 + score3) / n_studentsquare_of_mean = score_mean**2mean_of_square = (score1**2 + score2**2 + score3**2) / n_studentscore_variance = mean_of_square - square_of_meanscore_std = score_variance**0.5score1 = (score1 - score_mean) / score_stdscore2 = (score2 - score_mean) / score_stdscore3 = (score3 - score_mean) / score_stdscore_mean = (score1 + score2 + score3) / n_studentsqure_of_mean = score_mean**2mean_of_square = (score1**2 + score2**2 + score3**2) / n_studentscore_variance = mean_of_square - square_of_meanscore_std = score_variance**0.5 print("평균: ", score_mean)print("표준편차: ", score_std)표준편차가 1로 나오지 않습니다!평균: 0.0 표준편차: (1.223115032695291e-15+19.974984355438178j)
-
미해결[코드캠프] 부트캠프에서 만든 고농축 백엔드 코스
강의에 있는 똑같은 ppt는 pdf로라도 구할 수 없는걸가요?
강의자료에 자료가 있습니다만, 가르쳐주시는 곳의 ppt 랑 똑같은거는 아니더라고요. 강의중에 쓰는 ppt가 복습할때 더 효율적일 거 같아서 볼려고 하는데 볼 수 없을까요?
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
1-I 문제 백준에 1620번 검색했는데 나오지가 않네요...
1-I 문제 백준에 1620번 검색했는데 나오지가 않네요...혹시 몇 번 문제인지 알 수 있을까요...
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
while 대신 else if
while문 사용하는 이유가 if(sum==m) answer++;같은 코드 반복 하지 않기 위함이겠죠???아니면 또 다른 이유가 있을까요~? 감사합니다.import java.util.Scanner;public class Main { public int solution(int n, int m, int[] arr) { int answer = 0, lt=0, sum=0; for(int rt=0; rt<n; rt++) { sum += arr[rt]; if(sum==m) answer++; else if(sum>=m) { sum -= arr[lt++]; if(sum==m) answer++; } else { sum+=arr[rt]; if(sum==m) answer++; } } return answer; } public static void main(String[] args) { Main T = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int m = sc.nextInt(); int[] arr = new int[n]; for(int i=0; i<n; i++) { arr[i] = sc.nextInt(); } System.out.println(T.solution(n,m,arr)); }}
-
미해결홍정모의 따라하며 배우는 C언어
exit
8.9 강의 8:24 질문입니다exit(1)에서요 ()에다가 왜 1을 써야되나요?
-
해결됨웹 프론트엔드를 위한 자바스크립트 첫걸음
비동기 처리 질문있습니다.
🚨질문 작성법 및 안내사항질문 작성법- 몇 섹션의 어떠한 강의에 대한 질문인지 작성해주세요. (ex. 섹션2 조건문에 대한 질문)- 질문은 최대한 구체적으로 작성해주세요.- 비슷한 질문이 올라와있는지 확인해주세요.- 코드가 포함된 질문은 아래와 같이 코드블록을 사용해주세요.console.log("hello world");안내사항- 질문에 대한 답변은 보통 주말, 공휴일을 제외한 평일 오전 시간에 답변해드립니다. 강의에서 종료 라는 문장을 정말 이 코드가 종료됐을 때 출력하고싶다면, 우리는 콜백함수를 이용해 해당 코드를 인수로 넘겨주어야합니다. 이 부분이 이해가 되지 않습니다. 콜백함수로 왜 넘겨줘야하는지 헷갈립니다. <이렇게는 안되나요>const work = () => { 2 setTimeout(() => { 3 console.log("3초만 기다리세요"); 4 console.log("종료"); 5 }, 3000); 6}; 7 const work = (callback) => { 2 setTimeout(() => { 3 console.log("3초만 기다리세요"); 4 callback(); 5 }, 3000); 6}; 7 8 work(() => { 9 console.log("종료"); 10}); setTimeout(() => { 2 console.log("3초만 기다리세요"); 3}, 3000); 4 5console.log("종료");
-
미해결홍정모의 따라하며 배우는 C언어
EOF
EOF을 쓰는 이유가 입력이 다 끝났음을 알리기 위해서라면 scanf같이 입력을 받는 함수가 쓰일때마다 EOF도 있어야 된다고 생각하는데요 꼭 다 EOF가 있는건 아니더라구요 코드 작성시 EOF를 언제 써야되는지 잘 모르겠습니다.