172만명의 커뮤니티!! 함께 토론해봐요.
미해결
[리뉴얼] React로 NodeBird SNS 만들기
이번 강의에 해쉬 태그 등록을 위한 코드들 const hashtags = ~~~ 부분과 if(hashtags) { } 요거를 추가하면은 500에러가 떠요. 왜 이럴까요? const express = require ( 'express' ) const multer = require ( 'multer' ) const path = require ( 'path' ) const fs = require ( 'fs' ) const { Post , Image , Comment , User , Hashtag } = require ( '../models' ) const { isLoggedIn } = require ( './middlewares' ) const router = express . Router () try { fs . accessSync ( 'uploads' ) } catch ( error ) { console . log ( 'uploads 폴더가 없으므로 생성합니다.' ) fs . mkdirSync ( 'uploads' ) } // multer 셋팅 const upload = multer ({ storage : multer . diskStorage ({ destination ( req , file , done ) { done ( null , 'uploads' ) }, filename ( req , file , done ) { const ext = path . extname ( file . originalname ) // 확장자 추출(.png) const basename = path . basename ( file . originalname , ext ) // 이름 추출(제로초) done ( null , basename + '_' + new Date (). getTime () + ext ) // 이름_1518123131.png }, }), limits : { fileSize : 20 * 1024 * 1024 }, // 20MB }) // 게시글 작성 router . post ( '/' , isLoggedIn , upload . none (), async ( req , res , next ) => { try { // const hashtags = req.body.content.math(/#[^\s#]+/g) const post = await Post . create ({ content : req . body . content , UserId : req . user . id , }) // if(hashtags) { // const result = await Promise.all(hashtags.map((tag) => Hashtag.findOrCreate({ // where: { name: tag.slice(1).toLowerCase() }, // }))); // 결과 [[노드, true], [리액트, true]] // await post.addHashtags(result.map((v) => v[0])); // } if ( req . body . image ) { if ( Array . isArray ( req . body . image )) { // 이미지 여러개면 image: [경로.png, 경로.png] const images = await Promise . all ( req . body . image . map (( image ) => Image . create ({ src : image }))) await post . addImages ( images ) } else { // 이미지 하나만 올리면 image: 경로.png const image = await Image . create ({ src : req . body . image }) await post . addImages ( image ) } } const fullPost = await Post . findOne ({ where : { id : post . id }, include : [{ model : Image , }, { model : Comment , include : [{ model : User , // 댓글 작성자 attributes : [ 'id' , 'nickname' ], }] }, { model : User , // 게시글 작성자 attributes : [ 'id' , 'nickname' ], }, { model : User , // 좋아요 누른 사람 as : 'Likers' , attributes : [ 'id' ], }] }) res . status ( 201 ). json ( fullPost ) } catch ( error ) { console . error ( error ) next ( error ) } }) router . post ( '/:postId/comment' , isLoggedIn , async ( req , res , next ) => { try { const post = await Post . findOne ({ where : { id : req . params . postId } }) if ( ! post ) { // 게시글 존재하는지 확인 return res . status ( 403 ). send ( '존재하지 않는 게시글입니다.' ) } const comment = await Comment . create ({ content : req . body . content , PostId : parseInt ( req . params . postId ), UserId : req . user . id , }) const fullComment = await Comment . findOne ({ where : { id : comment . id }, include : [{ model : User , attributes : [ 'id' , 'nickname' ] }] }) res . status ( 201 ). json ( fullComment ) } catch ( error ) { console . error ( error ) next ( error ) } }) // 좋아요 누르기 router . patch ( '/:postId/like' , isLoggedIn , async ( req , res , next ) => { // PATCH /post/1/like try { const post = await Post . findOne ({ where : { id : req . params . postId }}) if ( ! post ) { return res . status ( 403 ). send ( '게시글이 존재하지 않습니다.' ) } await post . addLikers ( req . user . id ) res . json ({ PostId : post . id , UserId : req . user . id }) } catch ( error ) { console . error ( error ) next ( error ) } }) // 좋아요 취소 router . delete ( '/:postId/like' , isLoggedIn , async ( req , res , next ) => { // DELETE /post/1/like try { const post = await Post . findOne ({ where : { id : req . params . postId }}) if ( ! post ) { return res . status ( 403 ). send ( '게시글이 존재하지 않습니다.' ) } await post . removeLikers ( req . user . id ) res . json ({ PostId : post . id , UserId : req . user . id }) } catch ( error ) { console . error ( error ) next ( error ) } }) // 게시글 삭제 router . delete ( '/:postId' , isLoggedIn , async ( req , res , next ) => { // DELETE /post/10 try { await Post . destroy ({ where : { id : req . params . postId , UserId : req . user . id , }, }) res . status ( 200 ). json ({ PostId : parseInt ( req . params . postId , 10 ) }) } catch ( error ) { console . error ( error ) next ( error ) } }) // 이미지 업로드 router . post ( '/images' , isLoggedIn , upload . array ( 'image' ), ( req , res , next ) => { console . log ( req . files ) res . json ( req . files . map (( v ) => v . filename )) }) module . exports = router
redux react express nodejs Next.js
2021-08-21T09:09:01.627Z
댓글 1
좋아요 0
조회수 260
해결됨
풀스택 리액트 토이프로젝트 - REST, GraphQL (for FE개발자)
해결했습니다!
bj2525
2021-08-21T07:21:09.304Z
댓글 1
좋아요 0
조회수 226
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
게시글 삭제 직후 db에서는 바로 삭제가 되는데 브라우저에서 redux devtools로 state를 보면 mainPosts에 반영이 안되어있어요. 새로고침을 해야만 게시글이 사라져요. 어디에 문제가 있는건지 감이 안오네요
react redux express nodejs Next.js
2021-08-19T18:05:56.307Z
댓글 1
좋아요 0
조회수 368
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
db는 생성했는데 영상에 나오는 것처럼 mySQL workbench에서 생성된 데이터베이스를 어떻게 띄우는지 모르겠어요 ㅜ
mysql redux nodejs react express Next.js
2021-08-16T22:42:29.977Z
댓글 3
좋아요 2
조회수 486
미해결
파이썬으로 장고(Django) 공략하기: 입문
이렇게 뜨면서 설치가 안된건지 cirtualenv를 인식을 못해요...ㅠㅠ
virtualenv python django 가상환경 python 설치안됨
suhyeon
2021-08-16T12:35:44.145Z
댓글 1
좋아요 0
조회수 464
미해결
Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
view.py 에서 model = Post를 대입한 부분은 이해가 가는데 post_list.html에서 포문을 돌릴때 post_list라고 하는거는 변수명이 안맞는데 잘 돌아가는거에 대한 의문점이 듭니다.
python HTML/CSS docker bootstrap django tdd aws javascript
이원영
2021-08-16T10:42:54.713Z
댓글 1
좋아요 2
조회수 413
미해결
내 업무를 대신 할 파이썬(Python) 웹크롤링 & 자동화 (feat. 주식, 부동산 데이터 / 인스타그램)
주피터 노트북 실행시 질문입니다. 1. jupyter-lab 실행 시 'jupyter-lab'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는 배치 파일이 아닙니다. jupyter -lab usage: jupyter [-h] [--version] [--config-dir] [--data-dir] [--runtime-dir] [--paths] [--json] [--debug] [subcommand] jupyter: error: one of the arguments --version subcommand --config-dir --data-dir --runtime-dir --paths is required 이게 나옵니다. 안되는 이유가 궁금합니다. 2. 부모폴더(user)로 이동할려고 지정된 경로를 찾을 수 없습니다. 라고 나오는데 왜그런건가요? 3. 제가 주피터 노트북을 d드라이브에 설치하여서 cd로 D;juypter_notebook을 이동할려고 해도 다시 사진 처럼 c드라이브로 원상복구 되는데 이것은 왜그런건지 궁금합니다. 4. 탐색창에 주피터 노트북 아이콘을 클릭해서 실행하면 제대로 작동이되는데 프롬프트에서 실행하면 안되는 이유가 궁금합니다.
zzzzz
2021-08-15T06:26:08.447Z
댓글 2
좋아요 0
조회수 1229
해결됨
따라하며 배우는 도커와 CI환경 [2023.11 업데이트]
현재 App.test.js에는 test()안에 실행중인 코드가 없는 것 같고 test도 react에서만 진행하는데 테스트가 되는게 있나요? 테스트를 하여 성공을 하더라도 무엇을 기준으로 성공한건지 잘 모르겠습니다.. 그리고 백엔드 프론트 DB 등등 다양한 컨테이너가 존재하는데 테스트는 리액트만 진행하네요 이게 도커 환경에서 CI로 배포하는 과정까지 큰 틀에 집중하기 위해 test부분 내용은 의도적으로 생략하고 별다른 동작을 안해도 절차를 보여주기 위해 넣은걸로 보면 될까요??
docker aws travis test github react docker travis-ci cicd 데이터 엔지니어링
K. Seonwoo
2021-08-12T09:29:43.585Z
댓글 1
좋아요 0
조회수 193
미해결
문과생도, 비전공자도, 누구나 배울 수 있는 파이썬(Python)!
안녕하세여. Jupyter 실행하기 부분에서. 기본위치를 Desktop 으로 하고 Python_class로 기본 위치를 설정 해주셔서 보여주시는데 제 PC같은경우에는 초기 화면에서 DIR를 입력시 Desktop 폴더가 아예 존재하질 않습니다. 이럴경우 어떻게 하면 좋을까요?
구제남(jenam)
2021-08-10T07:35:30.948Z
댓글 2
좋아요 0
조회수 374
미해결
Do It! 장고+부트스트랩: 파이썬 웹개발의 정석
근데 강의에서 부트스트랩 4.x 버전을 사용하시는 이유가 있으신가요? 제 개인 프로젝트 사이트에서는 부트스트랩 5.x 버전을 적용하고 싶거든요.
bootstrap python docker tdd javascript aws django HTML/CSS
2021-08-09T09:58:52.568Z
댓글 1
좋아요 0
조회수 335
미해결
작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
안녕하세요 강의 중 잘 안되는게 있어서 질문드립니다. 강의를 따라하는 중 .env에 SECRET_KEY값을 담아서 사용하는데 다음과같은 에러가 발생합니다. C:\Users\deokpro\Desktop\Django\venv\lib\site-packages\environ\environ.py:628: UserWarning: C:\Users\deokpro\Desktop\Django\pragmatic\pragmatic\.env doesn't exist - if you're not configuring your environment separately, create one. warnings.warn( Traceback (most recent call last): File "C:\Users\deokpro\Desktop\Django\venv\lib\site-packages\environ\environ.py", line 273, in get_value value = self.ENVIRON[var] File "C:\Users\deokpro\AppData\Local\Programs\Python\Python39\lib\os.py", line 679, in __getitem__ raise KeyError(key) from None KeyError: 'SECRET_KEY' ........ django.core.exceptions.ImproperlyConfigured: Set the SECRET_KEY environment variable print문으로 env('SECRET_KEY')를 찍어보면 값이 정상적으로 들어오는게 확인되는데 python manage.py runserver만 하면 에러가 발생합니다. 혹시 해당내용 관련해서 조언을 구하고자 질문드립니다.
Ducky
2021-08-09T07:09:50.027Z
댓글 2
좋아요 0
조회수 2014
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
post 형식의 body인데 어떻게 name부터 imgUrl까지 destructuring할 수 있나요??정보가 입력되기 전인데 왜 그런지 궁금합니다..그리고 create({name:name,description:description..})이게 무슨 뜻인지 모르겠어요 key가 name,value가 name이런거를 만들라는건데 잘 이해가 가지 않습니다..ㅜ app . post ( " /products " , ( req , res ) => { const body = req . body ; const { name , description , price , seller , imageUrl } = body ; models . Product . create ( { name , description , price , seller , imageUrl , } ) . then ( ( result ) => { console . log ( " 상품 생성 결과 : " , result ) ; res . send ( { result , } ) ; } )
react-native 머신러닝 배워볼래요? tensorflow HTML/CSS nodejs react javascript express
2021-08-08T12:50:30.307Z
댓글 1
좋아요 1
조회수 169
미해결
세로가 길면 화면이 잘리는 현상이 있는데 어떻게 해결해야 될까요?
김호태
2021-08-06T22:00:21.832Z
댓글 0
좋아요 0
조회수 482
미해결
[리뉴얼] React로 NodeBird SNS 만들기
제로초님 궁금한게있어서 문의드립니다. styled-components 사용해서 react를 개발하려면 기존에 디자이너가 디자인을 해주고 그걸 마크업(퍼블리셔)가 html과 css파일로 주는 방식으로 업무를 진행하고있는데, styled-components를 이용하는 회사들은 마크업 업무를 프론트 개발자들이 다 하게 되는건가요? 실무에서는 업무롤이 어떻게되어서 진행되는지 궁금합니다.
redux react express nodejs Next.js
kaka0712
2021-08-05T13:22:58.428Z
댓글 1
좋아요 0
조회수 226
미해결
대세는 쿠버네티스 (Helm편)
먼저 올려주신 대세는 쿠버네티스를 수강하고 현재 이 헬름 강의를 수강하고 있습니다. 저는 react(javascript) 나 spring boot(java) 로 web 개발에 관심이 많습니다. 가능하시면 실제 배포를 예로 구성해주시면 실제 실무환경과 가깝게 구성하는 연습을 할수 있을것 같습니다. 간단하게 실제 어플리케이션을 배포하는 환경을 구성해 보아주시면 안될까요 ^^ 부탁드립니다.
react springboot kubernetes deploy
castinglife
2021-08-03T22:25:12.798Z
댓글 2
좋아요 1
조회수 330
미해결
작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지
안녕하세요. 54강 보면 마지막에 IP주소로 들어가면 바로 nginx가 아닌 연결된 장고 사이트로 접속 되는데 저는 여전히 nginx가 뜨네요. 강사님이랑 똑같이 진행한것같은데 안됩니다. 어떤 부분이 잘못된것일까요? nginx.conf 파일질라 nginx 컨테이너 설정값 django_container_gunicorn 참고로 aws입니다.
Yejoon Cho
2021-08-01T16:03:50.236Z
댓글 2
좋아요 0
조회수 482
미해결
실전 리액트 프로그래밍
예제를 보면 useEffect를 사용해서 등록된 이벤트 리스너 addEventListener(), removeEventListener() 를 클린업 해주는데, 이렇게 처리하는 이유가 궁금합니다. 또 리엑트에서는 왜 클린업을 해줘야 하는건가요?
wjdxor133
2021-07-31T10:01:22.973Z
댓글 2
좋아요 0
조회수 507
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
저는 antd이게 이만한데 왜케크죠???ㅋㅋ.. 혹시 이거 정상인가여? 아님 제가뭐 잘못한건가요??
nodejs redux express react Next.js
2021-07-29T10:51:21.743Z
댓글 1
좋아요 0
조회수 252
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
코드를 혼자 짜보려고 하는 중에 type error:cannot read property 'map' of undefined가 뜹니다. 서버쪽은 postman연동했을때 잘 뜨는데 논리 하자가 있는 것 같습니다..ㅠㅠ뭐가 문제일까요 main/index.js import " ./index.css "; import axios from " axios "; import React from " react "; import { API_URL } from " ../config/config.js "; function MainPage () { const [ products , setProducts ] = React . useState ([]) ; React . useEffect ( function () { axios . get ( `${ API_URL } /products ` ) . then ( function ( result ) { console . log ( " RESULT값: " , result ) ; const products = result . data . products ; setProducts ( products ) ; } ) . catch ( function ( error ) { console . log ( " error발생 " ) ; } ) ; }, []) ; return ( < div > < div id = " banner " > < img src = " images/banners/banner1.png " /> </ div > < h1 > 판매되는 상품들 </ h1 > < div id = " product-list " > { products . map ( function ( product , index ) { return ( < div className = " product-card " > < div > < div className = " product-contents " > < span className = " product-name " >{ product . name }</ span > < span className = " product-price " >{ product . price } 원 </ span > < div classNmae = " product-footer " > < div className = " product-seller " > < img className = " product-avatar " src = " images/icons/avatar.png " /> < span >{ product . seller }</ span > </ div > </ div > </ div > </ div > </ div > ) ; } ) } </ div > </ div > ) ; } ####App.js export default MainPage ; import " ./App.css "; import MainPageComponent from " ./main "; function App () { return < MainPageComponent /> ; } export default App ; ##server const express = require ( " express " ) ; const cors = require ( " cors " ) ; const app = express () ; const port = 7070 ; const models = require ( " ./models " ) ; app . use ( express . json ()) ; app . use ( cors ()) ; app . get ( " /products " , ( req , res ) => { models . Product . findAll ( { attributes : [ " id " , " name " , " price " , " imageUrl " , " seller " , " createdAt " ] , } ) . then ( ( result ) => { console . log ( " RESULT값 : " , result ) ; res . send ( { product : result , } ) ; } ) . catch ( ( error ) => { console . error ( " ERROR가 발생하였습니다: " , error ) ; } ) ; } ) ; app . listen (port , () => { console . log ( " 그랩 마켓의 서버가 돌아가고 있습니다. " ) ; models . sequelize . sync () . then ( () => { console . log ( " ✓ DB 연결 성공 " ) ; } ) . catch ( function ( err ) { console . error ( err ) ; console . log ( " ✗ DB 연결 에러 " ) ; process . exit () ; } ) ; } ) ;
머신러닝 배워볼래요? react-native javascript react HTML/CSS express nodejs tensorflow
2021-07-29T03:37:17.693Z
댓글 2
좋아요 1
조회수 545
미해결
driver.find_element_by_xpath('/html/body/div[2]/form/div/section/div/div[3]/p[2]/input').send_keys('5950') #금액 입력 안녕하세요 파이썬, 셀레니움을 이용해서 웹페이지 자동화를 하고 있습니다. click, send_keys가 다 정상적으로 작동 되는데 저 부분만 제꺼 컴퓨터에서는 정상 작동 친구컴퓨터에서는 작동하지 않네요... 건강보험 사이트인데...일부는 정상작동 몇분은 작동 안되는 이유를 모르겠습니다.
안영준 안
2021-07-29T02:41:54.624Z
댓글 0
좋아요 0
조회수 231