댓글작성 도중 해결안되는 에러가 있어 여쭤봅니다...
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
댓글 등록하고 버튼 눌렀을때 User 값이 안들어오는 것처럼 에러가 뜨는데 그 상태에서 바로 새로고침하면 값이 들어가있네요 분명 통신과정에서 올바르게 include한 전체 값을 들고오는게 맞는데 뭐가 문제인걸까요....?
- redux
- nodejs
- react
- express
- Next.js
172만명의 커뮤니티!! 함께 토론해봐요.
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
댓글 등록하고 버튼 눌렀을때 User 값이 안들어오는 것처럼 에러가 뜨는데 그 상태에서 바로 새로고침하면 값이 들어가있네요 분명 통신과정에서 올바르게 include한 전체 값을 들고오는게 맞는데 뭐가 문제인걸까요....?
해결됨
따라하며 배우는 노드, 리액트 시리즈 - 영화 사이트 만들기
안녕하세요? 더보기 버튼을 클릭하면 아래쪽으로 20개씩 영화 리스트가 쭉 뻗어나가는 기능은 정상적으로 작동합니다. 그런데 더보기를 누를 때마다 저런 경고메세지가 나옵니다. 다른분들 글을 보고 참고해서 MainMovieImage에 초기값으로 null을 넣어주었고, 선생님 코드와 비교해봐도 다른점이 없습니다. 그리고 저는 웹 페이지를 처음 로드했을 때는 아무런 에러가 없다가, loadMore 버튼만 누르면 이러는데..어떻게 해결해야 할까요 ㅠ
미해결
[리뉴얼] React로 NodeBird SNS 만들기
안녕하세요 제로초님 완강 후 덕분에 3군데에서 면접을 보게되어서 복습겸해서 작게나마 오픈api 활용해 영화정보 보여주는 프로젝트를 진행중 입니다. redux 셋팅을 마치고 메인 페이지에서 아래처럼 dispatch를 하고있는데 여기는 사가입니다. 이렇게요.. 어느부분이 문제인지 찾기 위해 dispatch를 하지 않고 그냥 메인페이지에서 axios호출을 하면 정상작동을 합니다. effect 콘솔도 한번만 찍히구요.. 그렇게 4시간정도 찾아보면서 수정을하다가 그럼 결론은 saga의 문제구나를 깨닫긴했는데 도대체 어디가 문제인지 알 수가 없네용 강의 프로젝트가 아니긴 하지만 한번만 확인해 주실 수 있을까용?? 전체코드가 필요할 수 도 있을 것 같아서 깃헙주소도 남겨 놓겠습니다! 바쁘실테지만,, 미리 감사합니다! 취업후기도 꼭 남길게요😄 https://github.com/psw0962/movie-reviews
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
import sys sys.stdin = open('2_9.txt', 'rt') def findDupValue(value): n_counter = {} for n in value: if n not in n_counter : n_counter[n] = 1 else : n_counter[n] += 1 if n_counter[n] == 2: return n N = int(input()) dice = [] cnt_dice = [] prize = [] for i in range(N): dice.append(list(map(int, input().split()))) cnt_dice.append(len(set(dice[i]))) for value, cnt in zip(dice, cnt_dice): if cnt == 1 : prize.append(10000 + (value[0]) * 1000) elif cnt == 2 : prize.append(1000 + (findDupValue(value)) * 100) else : prize.append(max(value) * 100) print(max(prize)) for문을 2개 쓴게 걸리는데 이런 코드는 어떤가요? 입력받을 때 주사위 값을 묶어서 배열로 저장하는 dice 리스트와 set으로 받아서 길이를 저장하는 cnt_dice 리스트를 사용했고 cnt 리스트가 2이면 findDupValue 함수에서 dictionary를 사용해서 다시 카운팅해 중복되는 숫자를 찾아 계산하는 코드입니다.
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
dis[6][6]에 도달할 수 있는 경우가 한가지가 아니라 여러갈래에서 도착 지점으로 갈 수 있는데 마지막으로 dis[6][6]에 들어간 값이 어떻게 최단 경로인건지 궁금합니다.
해결됨
[리뉴얼] React로 NodeBird SNS 만들기
도움 주신 덕분에 페이지를 잘 관리하고 있었는데 어제부터 DNS문제가 발생하는것 같네요. 저는 Error [ERR_TLS_CERT_ALTNAME_INVALID]: Hostname/IP does not match certificate's altnames: Host: api.-----.com. is not in the cert's altnames: DNS:raa.----.com, DNS:www.raa.----.com 이라는 문제를 접하고 있는데요 제로초님 사이트를 들어가보니 갑자기 문제가 생기신거 같더라고요 혹시 같은 에러때문에 오류가 발생한 것인지 궁금해서 글 남겨 봅니다. https://www.zerocho.com/ Application error An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details . You can do this from the Heroku CLI with the command 저와 같은 문제라면 아마도 서버사이드 렌더링이 깨져서 생기는 문제일 것 같긴 합니다...만 백 사이드는 오류시 적어도 프론트가 보이도록 해결은 했는데 정작 원인인 does not match certificate's altnames은 해결을 못하고 있네요.. 혹시 짐작 가시는 점 있으실까요? 강의랑 큰 관련이 없어보이기도 해서 조심스레 질문 남겨봅니다.
미해결
프론트엔드 개발환경의 이해와 실습 (webpack, babel, eslint..)
before함수 에러 나시는분들 업그레이드 되면서 onBeforeSetupMiddleware로 변경되었습니다. 참고하세요
미해결
[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
mm_faster_rcnn_train_kitti.ipynb 강좌 중, [2]번 STEP에서, kernel을 재시작 했는데도, 계속 import error가 발생합니다. 어느 부분을 점검해 보아야 하는지 모르겠습니다. 지도 편달 부탁 드립니다.
미해결
비전공자를 위한 진짜 입문 올인원 개발 부트캠프
Send버튼을 눌러도 아무 응답이 없는 경우 우측상단 저의 경우 "No Environment"로 되어있는 부분을 클릭하셔서 자신이 작성한 목업서버 이름을 클릭하시고 다시 Send를 누르시면 작성하신 응답 받을 수 있습니다.
미해결
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
강사님 안녕하세요~ 서버가 잘 죽는데~ 실제로 장고를 배포하고 서비스를 24시간 7일 운영하려면 서버가 안전성이 있어야 하는데~ 혹시 코드를 안전하게 구현을 못해서 강습보며 따라할때 잘 죽는건가요? 아니면 장고 프래임워크로 짠 서버가 원래 잘 죽는건가요? 스프링보다 장고가 훨씬 시장이 작은데 강습보며 연습하다 서버가 잘 주는걸 보고 장고 웹 프레임워크가 성능이 안좋아서 장고 쓰는 회사가 스프링에 비해 적은건가? 라는 스스로 걱정이 있어서 질문드립니다~
미해결
파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
안녕하세요 ~ 덕분에 장고강의 재밌게 듣고있습니다. 밑에서 질문에 대한 답글중에 강의를 준비중에 있으시다고 하셨던것같은데 django의 다른강의를 준비중이신가요? 그렇다면 언제쯤 나오나요?
해결됨
파이썬 동시성 프로그래밍 : 데이터 수집부터 웹 개발까지 (feat. FastAPI, async, await)
안녕하세요. 강의 잘보고 있습니다. request 모듈을 사용할때 session 을 열어 두고 사용하셨는데 세션을 연결하지 않고 사용할때와 세션을 연결하고 사용할때 차이점을 알수 있을까요 ?
해결됨
[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
교수님 안녕하세요 . 개정되고 나서 다시 정주행 하고 있고 있습니다. 좋은 강의 감사드리고 교수님 강의들 머신러닝과 오라클 강의 또한 아주 잘 듣고 있습니다. 교수님 Yolo v3 Custom Dataset으로 학습 후 아래와 같이 텐소보드를 통한 결과 같은데 이 부분을 어떻게 해석을 하고 보완을 해야할 지 강좌 내용에는 아래와 같은 Train 에 대한 학습 Result 를 하는 내용을 아직 제가 찾지 못해서 데이터를 분석하고 이해하는 법을 알고자 이렇게 두루뭉실하게라도 여쭙니다. 감사합니다.
미해결
파이썬 데이터시각화 분석 실전 프로젝트
안녕하세요 강의 잘 듣고 있습니다. 마라톤 데이터 가공 2 강의를 듣던 중 Step 5단계에서 오류가 발생합니다. 사용하고 있는 파이썬 버전은 3.8.12이고 pandas 버전은 1.3.4입니다. 강의 내용대로 순차적으로 실습 진행 중 Step 5단계에서 오류가 발생하여 Step 5단계의 다른 내용을 모두 주석 후에 marathon_2015_2017['5K'] = pd.to_timedelta(marathon_2015_2017['5K']) 이 코드만 실행해 보았는데요 그럼에도 오류가 발생합니다. 혹시나 해서 csv파일을 열어 보았는데 시간데이터 중 '-' 로 표시된 부분이 종종 있었습니다. 제 생각에는 '-'라는 문자가 있으니 null도 아니고 시간데이터도 아니다 보니 문제가 발생하는 것 같은 예감입니다. 아래에 오류 내용을 그대로 첨부하겠습니다. 도움 주시면 감사하겠습니다. --------------------------------------------------------------------------- ValueError Traceback (most recent call last) /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64 () /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.parse_timedelta_string () ValueError : symbols w/o a number During handling of the above exception, another exception occurred: ValueError Traceback (most recent call last) /var/folders/zl/7hy5k6z55zz2b286tv4bbk740000gn/T/ipykernel_48790/1493613945.py in <module> 6 7 # Convert using pandas to_timedelta method ----> 8 marathon_2015_2017 [ '5K' ] = pd . to_timedelta ( marathon_2015_2017 [ '5K' ] ) 9 # marathon_2015_2017['10K'] = pd.to_timedelta(marathon_2015_2017['10K']) 10 # marathon_2015_2017['15K'] = pd.to_timedelta(marathon_2015_2017['15K']) /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/tools/timedeltas.py in to_timedelta (arg, unit, errors) 122 return arg 123 elif isinstance ( arg , ABCSeries ) : --> 124 values = _convert_listlike ( arg . _values , unit = unit , errors = errors ) 125 return arg . _constructor ( values , index = arg . index , name = arg . name ) 126 elif isinstance ( arg , ABCIndex ) : /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/tools/timedeltas.py in _convert_listlike (arg, unit, errors, name) 171 172 try : --> 173 td64arr = sequence_to_td64ns ( arg , unit = unit , errors = errors , copy = False ) [ 0 ] 174 except ValueError : 175 if errors == "ignore" : /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/arrays/timedeltas.py in sequence_to_td64ns (data, copy, unit, errors) 989 if is_object_dtype ( data . dtype ) or is_string_dtype ( data . dtype ) : 990 # no need to make a copy, need to convert if string-dtyped --> 991 data = objects_to_td64ns ( data , unit = unit , errors = errors ) 992 copy = False 993 /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/core/arrays/timedeltas.py in objects_to_td64ns (data, unit, errors) 1098 values = np . array ( data , dtype = np . object_ , copy = False ) 1099 -> 1100 result = array_to_timedelta64 ( values , unit = unit , errors = errors ) 1101 return result . view ( "timedelta64[ns]" ) 1102 /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64 () /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.array_to_timedelta64 () /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.convert_to_timedelta64 () /opt/homebrew/Caskroom/miniforge/base/envs/DV/lib/python3.8/site-packages/pandas/_libs/tslibs/timedeltas.pyx in pandas._libs.tslibs.timedeltas.parse_timedelta_string () ValueError : symbols w/o a number
해결됨
탄탄한 백엔드 NestJS, 기초부터 심화까지
안녕하세요 윤상석 강사님. TypeORM의 트랜잭션 관련으로 질문이 있습니다. TypeORM에서 트랜잭션을 다루는 방법은 이전 질문글 에 답변해주셨듯이 크게 3가지인 것으로 알고 있습니다. 1. QueryRunner 2. getConnection, getManager 3. @Transactional 개인적으로는 @Transactional() 데코레이터를 사용하는것이 편리하여 사용하고 있었는데요. NestJS 공식문서 에서 데코레이터를 이용하는 것을 권장하지 않고 있고, 구글링을 해보아도 유닛 테스트에 어려움이 있어 권장하지 않는 분들이 많은 것을 알게되었습니다. 여기서 첫 번째 질문이 있습니다. Q1. "유닛 테스트에 어려움이 있다"는 이야기가 구체적으로 무슨 의미인지 궁금합니다. 모킹이 어렵다. 내 마음대로 제어가 불가능하다 등의 이야기가 이해는 가는데 와닿지는 않아서 질문드립니다. ---- QueryRunner 방식을 이용하게 되면 try-catch-finally 코드가 강제가 되는 것 같아보입니다. 여기서 두 번째 질문이 있습니다. Q2. 모든 에러를 감지하는 Filter를 적용해두었다면 QueryRunner를 사용하는 try-catch-finally 구문에서 에러 처리를 해버려 필터가 작동하지 않을 것 같은데 맞을까요? 맞다면, 만약 Filter에서 요청이 실패하였을 때의 로깅기능이 있다고 가정한다면 로깅기능이 작동하지 않을 것 같습니다. 그렇다면 catch 문에서 따로 Filter에서 구현한 로깅을 다시 구현해주어야 할까요? ---- 트랜잭션 처리를 도와주는 typeorm-transactional-cls-hooked 패키지를 발견하였습니다. 여기서 마지막 세 번째 질문이 있습니다. Q3. 해당 패키지는 유닛 테스를 할 때 트랜잭션 기능이 작동하지 않도록 모킹기능도 제공해주는 것 같습니다. QuerryRunner 보다 안 좋은점이 있다면 어떤 점이 있을까요? ---- 질문이 너무 많은 것 같아 죄송합니다. 좋은 강의와 답변해주셔서 항상 감사합니다.
미해결
따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
6.0 이상부터는 useNewUrlParser: true, useUnifiedTopology: true, useCreateIndex: true, useFindAndModify: false 내용이 기본 적용으로 위 내용을 주석처리나 지우고 실행 하시면 잘 연결 됩니다~
미해결
따라하며 배우는 노드, 리액트 시리즈 - 기본 강의
안녕하세요! 저번 질문에서 강사님께서 라는 질문에 대하 라고 답변을 해주셨는데요! 그렇다면 다른 파일(예를 들어 RegisterPage.js 등 디스패치를 쓰는 곳들을 뜻합니다!) response.payload라고 쓰지 않고 loginSuccess, register,userData 등의 스토어에 저장된 값을 다른 파일에서 직접 사용하고 싶다면 어떻게 해야되나요? 강의에서도 스토어에 있는 값을꺼내쓰지않고 와 같이 직접 처리를 해주었는데, 특별한 이유가 있나요 ?? 감사합니다.
미해결
파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
선생님 수업 잘 듣고 있습니다. 감사합니다. 59번째줄 그 행 번호까지 탐색한다고 하셨으니, for y in range(23, height -1 , -1): 아닌가 여쭤봅니다.
미해결
탄탄한 백엔드 NestJS, 기초부터 심화까지
먼저 너무 좋은 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' ; 함수로 만들어 파라미터로 넘겨주는 방법밖에 없을까요???
미해결
프로그래밍 시작하기 : 파이썬 입문 (Inflearn Original)
여기서 _가 외계속 나오는지 정말 모르겠습ㄴ니다. break도 해주었는데 for char in word 에서 secret가 한번씩들어가서 _가 6개가 나와야하는데 궁금합니다. 답답하고여!