묻고 답해요
164만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발
연관관계 편의 메서드 주인
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)네2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)네3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)네[질문 내용]여기에 질문 내용을 남겨주세요. 연관관계 메서드에서 addOrderItem메서드의 orderItem.add(orderItem)부분을 보면 연관관계 주인이 아닌곳에 값을 설정해 주는데 이렇게 하면 값이 들어가지 않는다고 알고 있는데 왜 주인이 아닌곳에 값을 넣어주는 건가요??바로 밑에 orderItem.setOrder(this) 이런식으로 오더를 넣어주는 상황이면 주인이 아닌쪽에서도 값을 넣을 수 있는건가요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
.push()가 .child() 보다 앞에 가면 안되는거였군요..
viewBinding.btnSave.setOnClickListener { myBookmarkRef .child(Firebase.auth.currentUser!!.uid) .push() .setValue(model) Toast.makeText(this, "저장되었습니다", Toast.LENGTH_SHORT).show() }myBookmarkRef .push() .child(Firebase.auth.currentUser!!.uid) .setValue(model)항상 바로안따라하고 강의먼저 듣고, 써놓은거 바탕으로 과거에 했던거까지 응용해서 제 코드에 넣는방식으로 공부했는데 이번에 제멋대로 아래처럼 하다가 북마크가 안떠서 2일동안 왜안될까 고민했네요 ㅠㅠ아무튼 혹시라도 다른분들도 북마크 안뜨시면 이거 한번 확인하면 좋을거같습니다.
-
미해결[코드팩토리] [중급] Flutter 진짜 실전! 상태관리, 캐시관리, Code Generation, GoRouter, 인증로직 등 중수가 되기 위한 필수 스킬들!
tag부분
원래 태그는 List<String>.from() 이런식으로 dynamic을 String으로 바꾸어줬던 것 같은데jsonSerializable에서는 List<String>으로 자동으로 바꾸어 주나요? 어떻게 String인지 아나요?
-
미해결[왕초보편] 앱 8개를 만들면서 배우는 안드로이드 코틀린(Android Kotlin)
실행시 에러 질문
실행시 다음과 같은 에러가 발생 합니다. 추가 해 줄 것이 있는 것인지요? 에러 내용 6 issues were found when checking AAR metadata: 1. Dependency 'androidx.appcompat:appcompat-resources:1.6.1' requires libraries and applications that depend on it to compile against version 33 or later of the Android APIs. :app is currently compiled against android-32.
-
미해결실리콘밸리 엔지니어와 함께하는 Apache Airflow
airflow tasks test error
안녕하세요.강의 실습중에 'airflow tasks test postgres_loader execute_sql_query 2023-01-01 ' 터미널에서 실행후 아래와 같은 오류가 발생해서 여쭤보고자 질문드립니다.Error 본문DB 연결 정보DB Table 생성 정보Airflow UI실행 환경Mac 14 proPython 3.11.5pip freeze aiohttp==3.8.5 aiosignal==1.3.1 alembic==1.11.3 anyio==3.7.1 apache-airflow==2.7.0 apache-airflow-providers-common-sql==1.7.0 apache-airflow-providers-ftp==3.5.0 apache-airflow-providers-http==4.5.0 apache-airflow-providers-imap==3.3.0 apache-airflow-providers-postgres==5.6.0 apache-airflow-providers-sqlite==3.4.3 apispec==6.3.0 argcomplete==3.1.1 asgiref==3.7.2 async-timeout==4.0.3 attrs==23.1.0 autobahn==23.1.2 Automat==22.10.0 Babel==2.12.1 backoff==1.10.0 blinker==1.6.2 cachelib==0.9.0 cachetools==5.3.1 cattrs==23.1.2 certifi==2023.7.22 cffi==1.15.1 channels==4.0.0 charset-normalizer==3.2.0 click==8.1.7 clickclick==20.10.2 colorama==0.4.6 colorlog==4.8.0 ConfigUpdater==3.1.1 connexion==2.14.2 constantly==15.1.0 cron-descriptor==1.4.0 croniter==1.4.1 cryptography==41.0.3 daphne==4.0.0 Deprecated==1.2.14 dill==0.3.1.1 distlib==0.3.5 Django==4.1.4 djangorestframework==3.11.2 dnspython==2.4.2 docutils==0.20.1 email-validator==1.3.1 exceptiongroup==1.1.3 filelock==3.8.0 Flask==2.2.5 Flask-AppBuilder==4.3.3 Flask-Babel==2.0.0 Flask-Caching==2.0.2 Flask-JWT-Extended==4.5.2 Flask-Limiter==3.3.1 Flask-Login==0.6.2 Flask-Session==0.5.0 Flask-SQLAlchemy==2.5.1 Flask-WTF==1.1.1 frozenlist==1.4.0 google-auth==2.22.0 google-re2==1.1 googleapis-common-protos==1.60.0 graphviz==0.20.1 grpcio==1.57.0 gunicorn==21.2.0 h11==0.14.0 httpcore==0.16.3 httpx==0.23.3 hyperlink==21.0.0 idna==3.4 importlib-resources==6.0.1 incremental==22.10.0 inflection==0.5.1 itsdangerous==2.1.2 Jinja2==3.1.2 jsonschema==4.19.0 jsonschema-specifications==2023.7.1 kubernetes==27.2.0 lazy-object-proxy==1.9.0 limits==3.5.0 linkify-it-py==2.0.2 lockfile==0.12.2 Mako==1.2.4 Markdown==3.4.4 markdown-it-py==3.0.0 MarkupSafe==2.1.3 marshmallow==3.20.1 marshmallow-oneofschema==3.0.1 marshmallow-sqlalchemy==0.26.1 mdit-py-plugins==0.4.0 mdurl==0.1.2 multidict==6.0.4 oauthlib==3.2.2 opentelemetry-api==1.15.0 opentelemetry-exporter-otlp==1.15.0 opentelemetry-exporter-otlp-proto-grpc==1.15.0 opentelemetry-exporter-otlp-proto-http==1.15.0 opentelemetry-proto==1.15.0 opentelemetry-sdk==1.15.0 opentelemetry-semantic-conventions==0.36b0 ordered-set==4.1.0 packaging==23.1 pathspec==0.11.2 pendulum==2.1.2 platformdirs==2.5.2 pluggy==1.2.0 prison==0.2.1 protobuf==4.21.12 psutil==5.9.5 psycopg2-binary==2.9.7 pyasn1==0.4.8 pyasn1-modules==0.2.8 pycparser==2.21 pydantic==1.10.12 Pygments==2.16.1 PyJWT==2.8.0 pyOpenSSL==23.0.0 python-daemon==3.0.1 python-dateutil==2.8.2 python-nvd3==0.15.0 python-slugify==8.0.1 pytz==2023.3 pytzdata==2020.1 PyYAML==6.0.1 referencing==0.30.2 requests==2.31.0 requests-oauthlib==1.3.1 requests-toolbelt==1.0.0 rfc3339-validator==0.1.4 rfc3986==1.5.0 rich==13.5.2 rich-argparse==1.2.0 rpds-py==0.9.2 rsa==4.9 service-identity==21.1.0 setproctitle==1.3.2 six==1.16.0 sniffio==1.3.0 SQLAlchemy==1.4.49 SQLAlchemy-JSONField==1.0.1.post0 SQLAlchemy-Utils==0.41.1 sqlparse==0.4.4 tabulate==0.9.0 tenacity==8.2.3 termcolor==2.3.0 text-unidecode==1.3 Twisted==22.10.0 txaio==23.1.1 typing_extensions==4.7.1 uc-micro-py==1.0.2 unicodecsv==0.14.1 urllib3==1.26.16 virtualenv==20.16.3 websocket-client==1.6.2 Werkzeug==2.2.3 wrapt==1.15.0 WTForms==3.0.1 yarl==1.9.2 zope.interface==5.5.2제가 생각하는 에러 원인오류 본문을 보고 DB 연결 문제라 생각이 들어 DB를 재생성 하여지만 아직도 원인은 똑같았습니다. 제가 작성한 코드는 아래 github에 올렸습니다.https://github.com/saohwan/learn-airflow
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
임시 반장 - break를 하는 이유
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요~제가 문제의 요지를 잘 파악 못해서 그런거 같은데 break를 하는 이유가 뭔지 잘 이해가 안됩니다.7:50부분저같은 경우는 2학년(k)때 3번학생(j)과 4번학생(i)이 같고3학년(k)때도 3번학생(j)과 4번학생(i)이 같은 경우를 카운팅 했었는데요break를 해야 한다는걸 문제의 어떤 줄을 보고 바로 깨달을 수 있을까요? 같았던 횟수를 구하는게 아니고, 같았던 학생의 명수를 구하는거라서 한번 같았으면 break하는거라고 이해하면 되는게 맞을까요? 다시 말해서, i와 j가 고정된 상태에서 k를 순회하는 중에 한번이라도 같으면 break를 하면 되는건가요? -- 그리고 추가 질문으로if ( i != j )를 안해도 된다고 하셨는데, 이 조건문을 추가함으로써 순회하는 과정을 일부 제외해서 성능이 더 좋아지지 않을까 생각해보는데 이런 생각도 맞는지 궁금합니다! 이미 for문의 조건문으로 설정된 부분이라 if문을 걸어도 시간복잡도에 영향은 없나요?
-
미해결자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]
14강 @PutMapping 작성에 오류가 발생합니다.
UserController.javaUserUpdateRequest.java 지난 강의에서 사용한 @PostMapping @GetMapping, 이번강의에서 PutMapping과 같이 사용한 @DeleteMapping은 정상적으로 작동이 되지만 @PutMapping만 문제가 발생하여 질문드립니다.Import가 안됐나 싶어 Import를 시도해보았지만 Import와 관련된 문제는 아니었던것 같습니다. @PutMapping과 updateUser의 @RequestBody 공통적으로 Annotations are not allowed here가 발생합니다.
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
임시반장 오답케이스가 되는 이유를 잘 모르겠습니다..
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의를 듣기전에 풀었는데, 3개는 맞는데, 정확도가 떨어지는 코드라고 나와서 왜 해당 코드가 오답케이스가 있는지 잘 모르겠습니다 ㅠㅠ혹시 어디가 잘못된건지 여쭤봐도 될까요?package Array.임시반장_정하기; import java.util.HashSet; import java.util.Scanner; import java.util.Set; public class Main { public int solution(int n, int[][] arr) { int answer = 0; Set<Integer> duplicates = new HashSet<>(); for (int i = 0; i < 5; i++) { for (int j = 0; j < n; j++) { int duplicate = arr[j][i]; for (int k = 0; k < n; k++) { if (duplicate == arr[k][i] && j != k) { duplicates.add(arr[k][i]); } } } } if (duplicates.isEmpty()) return answer+1; for (int i = 0; i < n; i++) { int count = 0; for (int j = 0; j < 5; j++) { for (int x:duplicates) { if (x == arr[i][j]) count ++; } if (count == duplicates.size()) { answer = i; break; } } } return answer; } public static void main(String[] args) { Main T = new Main(); Scanner sc = new Scanner(System.in); int n = sc.nextInt(); int[][] arr = new int[n][5]; for (int i = 0; i < n ; i++) { for (int j = 0; j < 5; j++) { arr[i][j] = sc.nextInt(); } } System.out.println(T.solution(n,arr)); } }
-
미해결데브옵스(DevOps)를 위한 쿠버네티스 마스터
질문있습니다.
우선 저는 GCP에서 가상머신을 사용하여 실습을 진행하고 있습니다. 대시보드의 로그인 화면까지는 실습을 잘 따라갔습니다. kubectl get secret -n kubernetes-dashboard 명령을 통해 토큰을 찾으려고 했지만 결과는 아래와 같았습니다.NAME TYPE DATA AGE kubernetes-dashboard-certs Opaque 0 44m kubernetes-dashboard-csrf Opaque 1 44m kubernetes-dashboard-key-holder Opaque 2 44m 스택오버플로에서 1.24 버전 이후로는 토큰이 생성되지 않는다는 말을 듣고 아래의 명령을 통해 생성하였습니다..(잘 모르지만 일단 해봤습니다..)$ kubectl create token kubernetes-dashboard -n kubernetes-dashboard 그래도 다행인지 생성한 토큰으로 로그인에 성공하며 접속할 수 있었습니다. 이후 강의는 내용이 잘 이해되지는 않았지만 영상을 따라하며 진행했습니다. kube-dashboard-role-binding.yaml파일을 통해 create하였는데 이미 존재한다는 문구와 함께 에러가 발생했습니다. 확인해보니 실제로 있었기에 클러스터롤바인딩 리소스를 지우고 yaml파일로 다시 생성해 주었습니다. clusterrolebindings는 잘 생성됐지만 대시보드를 확인해보니 Unknown error (404) the server could not find the requested resource (get ingresses.extensions)라고 나오네요..파드, 디플로이먼트, 레플리카셋 등 몇몇은 잘 나오지만 개요부분 워크로드 일부분이 404가 나옵니다... 강의 동영상처럼 진행하지 않아 찜찜한데 결과도 완벽하지가 않아서 질문드렸습니다.. 중간 중간 영상과 달라 제가 했던 방식이 옳게 한 것인지 확신이 들지 않아서 답변을 듣고싶습니다. 긴글 읽어주셔서 감사합니다.
-
미해결스프링 부트 - 핵심 원리와 활용
프로메테우스 그라파나 스프링부트 여러개 연동
스프링부트 api 서버가 여러개 있을때그라파나에서 각각 서버 모니터링 하고 싶은데 이럴땐 어떻게 하나요?
-
해결됨디자인 시스템 with 피그마
토큰스튜디오 / 로컬베리에이블
안녕하세요. 강의를 통해 토큰스튜디오를 배우고 다크모드/라이트모드에 각 시멘틱컬러를 적용해놓았는데요,피그마 업데이트로 생긴 로컬베리어블기능에도 같은 기능이 있어서.. 혹시 피그마 로컬베리어블 기능으로 만들어놓은 각 모드별 스페이싱, 컬러, 스트링등 토큰들을 그대로 토큰스튜디오 플러그인으로 옮길 수 있을까요? 피그마 로컬 스타일로 저장해놓은 컬러와 텍스트들은 임폴트 기능을 통해서 global로 불러오는건 되는데 라이트모드 / 다크모드에 토큰이 자동으로 옮겨지진않네요 ㅠ 사내 디자인시스템을 구축하려하는데 어떤걸 써야할지, 둘 다 사용해야하는건지 고민입니다.
-
미해결Kevin의 알기 쉬운 Spring Reactive Web Applications: Reactor 1부
Hot Sequence의 실무예제
실무에서는 Hot Sequence가 어떤 경우에 사용되나요?!
-
해결됨리눅스 성능 분석 시작하기
안녕하세요
DevOps와 SE를 위한 리눅스 커널 이야기 이 책 관련해서 인강 하나 만들어보시는거 어떨까요?책에서 말하지 못한 부분이나책 내용 중에 영상으로 설명하면 좋겠다는생각드시는 부분이 있으실거 같아요ㅎ
-
해결됨블렌더 3D 아이소메트릭 방 만들기
수강 완료
강의 잘 들었습니다:)완전 만족!제 생각은 잠시 넣어두고 강의랑 최대한 비슷한 느낌으로 만들어봤어요~아 그리고 궁금한 게 있는데,블렌더 이용해서 갈 수 있는 분야가 어떻게 될까요? (취업)얼마전까지 게임 캐릭터 모델링 작업을 하다가 최근 블렌더에 관심이 생겨서 공부중인건데,생각해보니까 굳이 게임 쪽 아니더라도 상관 없을 것 같아서요!도넛 가게 강의도 들을 예정인데 기대중이에요:)좋은 강의 감사합니다!
-
미해결10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트
다익스트라 알고리즘
안녕하세요 큰돌님 곧 있으면 공채 코테 기간이라 많은 준비를 하고 있습니다! 다름이 아니라 다익스트라 알고리즘이라는 것이 가끔 코테에 나온다고 들었습니다.제가 지금 시간이 없어서 코테 시험 기간까지는 모든 문제를 풀진 못 할 거 같습니다.. 우선적인 것들 다시 풀어보고가야할 것 같은데혹시 다익스트라 알고리즘이 배우고 가야 할만큼 자주 나오는 유형인가요??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
맥북에서 빌드 오류
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요.1. 강의 내용과 관련된 질문을 남겨주세요.2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요.(자주 하는 질문 링크: https://bit.ly/3fX6ygx)3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요.(질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG)질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요.=========================================[질문 템플릿]1. 강의 내용과 관련된 질문인가요? (예/아니오)2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오)3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오)[질문 내용]여기에 질문 내용을 남겨주세요.2019년형 맥북 사용중인데요, .gradlew build 부분에서 자꾸 오류가 나네요. 왠만한거 검색이랑 다른 토론글로 자바 11로 다 수정했는데 계속 오류가 나요.마지막사진에 자바 버전이 1.8 로 되어있어서 그것도 바꿀려고 했는데 계속 안바뀌네요...혹시 뭐가문제인지 알수있을까요?
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
2D 게임 설계 LoadTexture 이미지 불러오기
다운받은 강의 자료에는 Item은 없는데 어디서 다운 받는건가요??
-
미해결다양한 사례로 익히는 SQL 데이터 분석
order by 정렬 문의
안녕하세요 강사님 group by + distinct를 비교해보다 이유는 모르겠지만 위에 distinct를 넣은 것은 day 컬럼이 자동으로 정렬이 되었고아래의 distinct를 넣지 않은 컬럼은 정렬 되지 않았습니다 아래도 역시 distinct 를 넣으니 자동 오름차순이 되었습니다 (count( DISTINCT oi.order_id)) 혹시 그 이유가 궁금합니다 또, order by 처리 시 쿼리 속도가 느려진다는 말이 있는데 이런식으로 order by 를 넣지 않고 자동 정렬 되는 것이 있다면 쿼리 속도 향상에 도움이 될까요? 쿼리문자동 정렬 SELECT date_part( 'day', o.order_date) AS DAY, sum(amount) AS sum_amount, count(DISTINCT o.order_id) AS daily_ord_cutFROM orders o, order_items oiWHERE 1 = 1AND o.order_id = oi.order_idGROUP BY date_part( 'day', o.order_date)ORDER BY 1;정렬 안됨SELECT date_part( 'day', o.order_date) AS DAY, sum(amount) AS sum_amount, count( oi.order_id) AS daily_ord_cutFROM orders o, order_items oiWHERE 1 = 1AND o.order_id = oi.order_idGROUP BY date_part( 'day', o.order_date);
-
미해결[개념은 호옹~, 실습 빡] 스프링 부트, 입문!
수정완료를 눌렀을때 첫번째 데이터는 전송이 안되고 다시 수정완료 버튼을 눌러야 데이터가 전송 됩니다.
수정완료를 눌렀을때 처음 데이터는 전송이 안되고 다시 수정완료 버튼을 눌러야 데이터가 전송 됩니다. 위 사진과 같이 첫번째 시도에 입력한 수정 데이터는 서버로 전송이 되지 않고 있습니다. 다시한번 수정완료 버튼을 눌러야 그제야 데이터가 서버로 전송되는데 어느 부분이 문제 인지를 모르겠습니다.DB를 확인해보봐도 두번째 클릭했을때만 데이터가 전송됩니다.<_list.mustache><div id = "comments-list"> {{#commentDtos}} <div class = "card m-2" id = "comments-{{id}}"> <div class = "card-header"> {{nickname}} <!--모달 트리거 버튼--> <button type="button" class="btn btn-sm btn-outline-primary" data-bs-toggle="modal" data-bs-target="#comment-edit-modal" data-bs-id="{{id}}" data-bs-nickname="{{nickname}}" data-bs-body="{{body}}" data-bs-article-id="{{articleId}}" > 수정 </button> </div> <div class = "card-body"> {{body}} </div> </div> {{/commentDtos}} </div> <!-- Modal --> <div class="modal fade" id="comment-edit-modal" tabindex="-1"> <div class="modal-dialog"> <div class="modal-content"> <div class="modal-header"> <h1 class="modal-title fs-5" id="exampleModalLabel">댓글 수정</h1> <button type="button" class="btn-close" data-bs-dismiss="modal" aria-label="Close"></button> </div> <div class="modal-body"> <!--댓글 수정폼 --> <form name = "edit-form"> <!-- 닉네임 입력--> <div class = "mb-3"> <label class = "form-label">닉네임</label> <input type ="text" class = "form-control form-control-sm" id ="edit-comment-nickname"> </div> <!--댓글 본문 입력--> <div class = "mb-3"> <label class = "form-label">댓글 내용</label> <textarea type ="text" class = "form-control form-control-sm" row = "3" id="edit-comment-body"></textarea> </div> <!--히든 인풋--> <input type = "hidden" id = "edit-comment-id" > <input type = "hidden" id = "edit-comment-article-id" > <!--전송 버튼--> <button type = "button" class = "btn btn-outline-primary btn-sm" id="comment-update-btn">수정 완료</button> </form> </div> </div> </div> </div> <!--모달 이벤트 처리--> <script> { // 모달 요소 선택 const commentEditModal = document.querySelector("#comment-edit-modal"); // 모달 이벤트 감지 commentEditModal.addEventListener("show.bs.modal",function(event){ //트리거 버튼 선택 const triggerBtn = event.relatedTarget; //데이터 가져오기 const id =triggerBtn.getAttribute("data-bs-id"); const nickname =triggerBtn.getAttribute("data-bs-nickname"); const body =triggerBtn.getAttribute("data-bs-body"); const articleId =triggerBtn.getAttribute("data-bs-article-id"); //데이터 반영 document.querySelector("#edit-comment-nickname").value = nickname; document.querySelector("#edit-comment-body").value = body; document.querySelector("#edit-comment-id").value = id; document.querySelector("#edit-comment-article-id").value = articleId; }); } { //수정완료버튼 const commentUpdateBtn = document.querySelector("#comment-update-btn"); //클릭 이벤트 감지 및 처리 commentUpdateBtn.addEventListener("click",function(){ // 수정 댓글 객체 생성 const comment = { id :document.querySelector("#edit-comment-id").value, nickname:document.querySelector("#edit-comment-nickname").value, body:document.querySelector("#edit-comment-body").value, article_id:document.querySelector("#edit-comment-article-id").value }; console.log(comment); // 수정 REST API 호출 { // 수정 완료 버튼 const commentUpdateBtn = document.querySelector("#comment-update-btn"); //클릭 이벤트 감지 및 처리 commentUpdateBtn.addEventListener("click",function(event){ //수정 댓글 객체 생성 const comment = { id: document.querySelector("#edit-comment-id").value, nickname: document.querySelector("#edit-comment-nickname").value, body:document.querySelector("#edit-comment-body").value, article_id:document.querySelector("#edit-comment-article-id").value }; console.log(comment); //수정 REST API 호출 - fetch() const url = "/api/comments/" + comment.id; fetch(url,{ method: "PATCH", //patch 요청 body: JSON.stringify(comment), // 수정된 댓글 객체를 JSON으로 전달 headers: {"Content-Type" : "application/json"} }).then(response => { // 응답 코드에 따른 메시지 const msg = (response.ok) ? "댓글이 수정 되었습니다." : "댓글 수정 실패"; alert(msg); // 현재 페이지 새로고침 window.location.reload(); }); }); } }); } </script>
-
해결됨유니티 머신러닝 에이전트 완전정복 (기초편)
PPO Parameters에서 normalize 관련 질문입니다.
안녕하세요.개인 프로젝트를 진행하면서 강의를 보면서 많은 도움을 받고 있습니다. 좋은 강의 만들어주셔서 감사합니다.vector observation 입력을 정규화하려면 network settings에 normalize를 true로만 설정하면 되나요?예를 들어 Agent 코드에서 CollectObservation 메소드에 차량의 속도를 아래와 같이 정규화하지 않은 속도만 추가하고 paramater에서 normalize를 true로 설정하면 속도가 자동으로 normalize가 되는지 궁금합니다. public override void CollectObservations(VectorSensor sensor) {sensor.AddObservation(car.velocity);} 감사합니다.