안녕하세요, 질문 있습니다! 마지막 부분에서 초기 비밀번호 외에 새로 생성한 비밀번호로는 새로 생성할 수 없다고 하셨는데, 호스트 컴퓨터의 폴더를 삭제하고 다시 생성하는 경우 이전에 생성했던 데이터베이스도 모두 삭제되는 게 맞을까요? : 호스트 컴퓨터의 폴더를 삭제하면 데이터도 삭제로 이해면 될지 답변부탁드립니다. (유익한 강의 즐겁게 수강중입니당.. 감사합니다.)
어떤 강의에 대한 질문인지 자세하게 알려주시면 답변을 드리는데 도움이 됩니다. 스크린샷 윈도우키 + 쉬프트키 + S(윈도우) 을 자세히 첨부하시면 답변 드리는데 많은 도움이 됩니다. 동영상 재생 관련 같은 인프런 서비스 관련 문의는 1:1 문의하기를 이용해 주세요. nngro으로 url 발급받아서, 외부 접속시 AI Agent의 Fail 이슈는 해결했습니다. 고맙습니다. 그런데, n8n에서 질의할 때는 정상 작동하는데, 외부에서 접속할 때는 동일한 질의에 대해 답변이 다릅니다. 최신 정보를 검색하지 못합니다. 어떤 점을 살펴보면 될까요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - ★ 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. command editor가 없는 경우 어떻게 설정해야하나요?
그냥 인프런이 유명하다해서 들어왔는데 솔직히 잘 모르겠어서 다른분들은 강의 어떻게 찾는지 궁금합니다. 좀 뒤져보니까 다들 추천받고 어떤 강의, 어떤 강사님 추천받고 그냥 그거 들으시나요? 아니면 인프런에서 검색해서 미리보기하고 들으시나요? 솔직히 홈 화면 정신없는거같은데 그냥 노출 많이 되서 좋으신분도 있는건지 궁금...
좋은 강의감사합니다. 다 강의를 완강하고, 복습을 한다고 했을때 물론 ppt가 있긴 하지만, 줄글로 된거나 이런게 없어서 복습을 어떻게 해야 기억에 남을지 하는데 강의 준비하신 분은 어떤 복습법을 의도하셨고? 추천하시는지 문의드립니다. 강의를 다시 보기, ppt 다시 보기, 뭐 등등?
안녕하세요 ! 선생님 코드를 보면 댓글 서비스에서 댓글을 생성할때 request로 들어온 articleId 나 writerId에 대해서 실제로 데이터 베이스에 있는지 검증하는 부분이 없는데, 이렇게 구현을 하면 확실히 테스트 코드를 짤때 실제 데이터 베이스에 저장된 게시글을 넣어주지 않아서 편한것 같습니다. 혹시 실제 현업에서 코드를 짤때도 request 로 넘어온 데이터를 따로 검증을 하지 않아도 되는 건가요? @Transactional public CommentResponse create(CommentCreateRequest request) { Comment parent = findParent(request); Comment comment = commentRepository.save( Comment.create( snowflake.nextId(), request.getContent(), parent == null ? null : parent.getCommentId(), request.getArticleId(), request.getWriterId() ) ); return CommentResponse.from(comment); }
학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 이제 중급까지 듣고 고급편을 들어야되는데 생각보다 람다식이 스프링이나 다른곳에서 함수형을 많이 쓰는것 같은데 시간이 많이 없으면 고급 1,2편보다 람다식,스트림인 고급3편을 들어도 괜찮을까요? 고급 1,2편을 안봐도 문제없을까요??
116.INTERSECT로 봄학기에 등록된 수업 검색 파트인데 SELECT b.course_id, b.tilte from v_intersect a, course b where a.course_id=b.course_id b.title 부분이 부적합한 식별자라고 오류가 뜹니다 이 부분이 오류가 떠서 하나하나 찾아보니까 course 테이블에 title이라는 컬럼이 없어서 그런거같은데 강의에선 그냥 진행이 되더라고요 혹시 제가 뭘 빠트린게 있을까요
26강에서 User model를 만들고, Task model의 관계 설정까지 하고 env.py에서 User를 임포트하고 난후 alembic revision --autogenerate를 실행하고, alembic upgrade head 를 실행하면 User 테이블과 Task 모델의 관계설정은 잘 만들어 졌지만, 아래에 보이는 것처럼, 제약조건에 name을 지정하라고 나옴니다. 그래서 name을 지정하고 db를 삭제하고, alembic을 초기화된 상태로 만든 후에 다시 똑같은 과정을 거쳐 실행햇는데, 두번째 alembic revision --autogenerate 을 실행하면, sqlalchemy.exc.NoReferencedColumnError: Could not initialize target column for ForeignKey ' users.id ' on table 'tasks': table 'users' has no column named 'id' 이런 오류가 나타납니다. 자꾸 자꾸 계속해서 다시 해봐도 제약조건에 이름을 넣으라고 나오고, 그것을 수정하면 users에 id가 없다는 둥 계속 똑같이 오류가 나옵니다. 해결 방법은 무엇일까요? 완전히 새로 해봐도 똑같은 오류만 계속 반복됩니다.
[Error: Make sure to complete the guide at https://docs.expo.dev/push-notifications/fcm-credentials/ : Default FirebaseApp is not initialized in this process com.cozyu.threadsclone. Make sure to call FirebaseApp.initializeApp(Context) first.] 처음에 package name을 잘못 입력한 상태에서 등록까지 했었다가 지우고 com.cozyu.threadsclone로 재등록했는데도 계속 같은 오류가 발생합니다... google-services.json의 package_name도 이렇게 되어있고, firebase - 일반에서의 패키지 이름도 동일하게 되어있고, expo dev - credentials에서도 이렇게 되어 있는데 안되네요... 폴더에서 json 키 두 개 제거 후에 다시 다운 받았아서 app.json과 동일한 위치에 넣었고, eas credentials 부터 다시 했는데 안됩니다. 혹시 다른 해결 방법이 있을까요?
@Entity @Getter @Setter public class Category { @Id @GeneratedValue @Column(name = "catagory_id") private Long id; private String name; @ManyToMany @JoinTable(name = "category_item",joinColumns = @JoinColumn(name = "category_id"),inverseJoinColumns = @JoinColumn(name = "item_id")) private List<Item> items = new ArrayList<>(); @ManyToOne @JoinColumn(name = "parent_id") private Category parent; @OneToMany(mappedBy = "parent") private List<Category> child = new ArrayList<>(); } 이 부분에서, 카테고리의 계층? 을 표현하기위해 카테고리 엔티티를 위와 같이 하셨는데요. 여기에서 @OneToMany(mappedBy = "parent") private List<Category> child = new ArrayList<>(); 이 부분이 무슨 의미로 사용되는지 이해가 잘 되지않습니다.. 연관관계의 주인이 아닌쪽이기 떄문에 mappedBy를 적어준거같은데, 해당 코드가 필요한 이유와 사용되는 목적이 무엇인지 질문드립니다. 그리고 private Category parent와 private List<Category> child = new ArrayList<>();가 어떤 연관관계가 있길래 연관관계를 맺는것인지 이해가 잘 되지않아서 질문드립니다. 감사합니다.
가상 머신으로 서버 몇개 돌리면 컴퓨터가 정신을 못 차립니다. ㅠㅠ [ 👍 좋은 질문을 했을 때 좋은 답변이 돌아 옵니다] 1. 실습 중 본인의 환경이 가이드와 다른 부분이 있었다면 말씀해주세요. 2. 해당 문제의 발생 빈도(재설치 여부)와 문제 해결을 위해 시도해본 케이스를 말씀해 주시면 원인 파악에 큰 도움이 됩니다. 3. 에러 메시지만 봐서는 저도 모르는 경우가 많아요. 그전에 했던 작업이 포함된 캡쳐 화면도 부탁 드려요. 4. 영상 내용에 대한 질문 시 해당 시간을 같이 올려 주시면 답변을 드리는 시간이 더 빨라집니다. 5. 긴 로그는 제 메일로 보내주세요. ( k8s.1pro@gmail.com ) 6. 카페 [ 강의 자료실 ]에도 많은 질문과 답변들이 있어요!
안녕하세요 오랜만에 글을 쓰는것같습니다. 강사님 덕분에 하나씩 만들어가는데 재미를 붙이고 있습니다. 유튜브 대본 추출하는것 때문에 fastapi와 더불어 도커 이미지를 생성했었지요... 그 덕분에 n8n에서만 하기 힘든것(예 동적 크롤링) 을 하기 위해서 파이썬 및 셀레리움으로 도커 이미지를 만들어서 사용하고 있습니다. 다른 곳에서 찾아서 도메인 연결 및https인증도 받아서 진행 하기도 했구요 회원제는...잘 알려주셨지만 아직 현실화를 못했네요 생각보다 넘어야 할 산이 좀 있었네요 전에 알려주셨던 카톡봇에 대해서 궁금하여 파이썬 강의를 들었습니다. 말 그대로 어떤지 들었구요 정말... 난이도는 극악인것같습니다. 사업자를 가진 상황에서 정말 서비스를 구현할떄는 좋은 상황이지 일반 개인이 도전하긴 쉽지 않은 난이도 임은 분명하더군요 . 차라리 그전에 클롤링을 위한 사전지식? 센스? 그게 더 당장에는 도움되었습니다. 혹시 도움 되실까 싶어서 남깁니다 카톡채널의 봇이 아니라 봇이긴 하는데 일반계정으로 운영하는 방법입니다. https://www.youtube.com/watch?v=3oI0VvBYl_s&t=666s 물론 이미 아실지도 모르겠습니다. 핸드폰에 어플을 다운하고, 해당 어플은 푸시를 읽어 내구요 이후 답변을 해당 카톡방에 하게 됩니다. 해당 영상에서는 푸시로 받으 내역을 웹훅으로 메이크에 전송 , 답변을 웹훅으로 어플에 전달 어플은 카톡에 전송 이런 형태였습니다. 저도 실행해본건 아니나.. 웹훅이 되기에 텔레봇과 같은 역할은 할수 있지 않을까 생각은 들었습니다. 그리고..이번에 추가 강의 업로드하시면서 다음강의를 말씀해주신게 있는데 언제쯤 오픈예정인지 알수있을까 싶어서 글을 남깁니다 너무 좋은 강의에...요청만 많은것같아 민망합니다 그러나 다른 어떤 강의보다 저에게 많은것을 남겨주셨기에 궁금해서 여쭤봅니다.
'Incorrect API key provided' 강의 내용과 동일하게 아래 주소로 로그인 후 'Create new secret key'를 통해서 API KEY를 발급받았습니다. https://platform.openai.com/api-keys 이후에 Copy 버튼 클릭해서 환경변수(.env) 파일에 OPENAI_API_KEY=복사한_API_KEY 저장 후 ChatOpenAI를 통해서 선언한 llm을 invoke()했는데, 반복적으로 Incorrect API Key provided 오류가 발생합니다. 혹시나 잘못 복사해서 붙여넣었나 싶어서 삭제 후 API KEY를 신규 생성 후 동일하게 invoke 해봤는데, 문제가 해결되지 않았습니다. 혹시 다른 원인이 있을까요?? 답변 기다리겠습니다.
transform 계층구조를 구현하는 쪽에서 경우의 수 부모의 월드 transform이 변경된 경우 나의 local transform이 변경된 경우 나의 world transform이 변경된 경우 새로운 부모를 설정하기 부모의 로컬값은 부모의 부모와의 거리이므로 결국 월드값이 변경될 것이기에 상관이 없다. 하나씩 따져보자. 부모의 월드transform이 변경되었으면 나의 local은 유지되어야 하고, 이에따라 자신의 world transform값이 변경되어야 한다. 따라서 자신의 local과 부모의 world로 자신의 world를 구해주는 것 이때, 자신의 자식도 동일한 상황이다. 나의 local transform이 변경된 경우에는 나의 world transform값을 여기에 맞게 바꿔줘야 한다. 따라서 부모의 world와 자신의 local을 이용하여 자신의world값을 구해주면 된다. 이 때, 자신의 world값이 변경되었으므로 자신의 자식들에 대해서는 1번 상황이 발생한다. 나의 world가 변경되었으면 나의 local값을 변경된 정도에 따라 수정해줘야 한다. ( 부모를 옮길 수는 없으므로 ) 따라서 변경된 나의 world값과 부모의 world값을 비교해 자신의 local값을 구해줘야 한다. 이 때, 자신의 world값이 변경되었으므로 자신의 자식들에 대해서는 1번 상황이 발생한다. 으로 이해했습니다. 따라서 자신의 world값이 변경된다면 -> local값을 world값에 맞춰주고 -> 이에 따라 자식들의 world값을 업데이트 해준다. 이므로 void TransformComponent::UpdateWorld() { // 자신의 월드 정보 업데이트 if (HasParent()) { const TransformComponent& parent = *GetParentPtr(); _WorldTransform = _LocalTransform.LocalToWorld(parent.GetWorldTransform()); } else { _WorldTransform = _LocalTransform; } // 월드 정보 변경 시 자식의 월드 정보도 업데이트 ( 로컬 정보는 변함 없음. ) UpdateChildrenWorld(); } 는 이해를 했는데 위쪽의 논리대로라면 자신의 local값이 변경된다면 world값을 맞춰주고 자식들의 world값을 업데이트 해줘야하지 않습니까? 근데 github코드에서는 자식들에 대해서 UpdateChildrenWorld();함수 호출을 하지 않고있습니다. void TransformComponent::UpdateLocal() { if (HasParent()) { const TransformComponent& parent = *GetParentPtr(); _LocalTransform = _WorldTransform.WorldToLocal(parent.GetWorldTransform()); } else { _LocalTransform = _WorldTransform; } } 이유가 궁금합니다.
안녕하세요, 강사님! 혼공 시리즈(컴퓨터구조, 운영체제, 네트워크)를 들으며 많은 도움을 받고 있습니다. 다름이 아니라 강의 내용을 개인적으로 정리하여 복습하고자 하는데, 이를 블로그에 업로드해도 괜찮을지 여쭤보고자 질문을 올리게 되었습니다. 물론 출처는 분명히 표기하여 강사님과 강의 내용을 존중하는 형태로 작성할 예정입니다! 블로그에 올리는 것이 가능하다면 개인적인 복습과 다른 사람들에게도 도움이 될 수 있도록 정리해 공유하려고 합니다. 허락해주시면 감사하겠습니다! 항상 좋은 강의 감사합니다. :)