묻고 답해요
131만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결업무 자동화를 위한 파이썬 pyautogui, beautifulsoup 크롤링 기초
import
visual studio code 에서는 import가 안돼요 일단 jupyter notebook 에서는 되길래 그렇게 실습하려고하긴합니다. 저는 vscode에서 하고싶은데 왜 vscode에서는 안될까요?
-
미해결[2024년 출제기준] 웹디자인기능사 실기시험 완벽 가이드(HTML+CSS+JQUERY)
네비게이션 호버 관련
선생님 네비게이션 옆으로 보이게 하는 구성 연습중 막히는 부분이 있어 질문드립니다!! 캡쳐화면과 같이 마우스를 menu1에 올리면 sub-menu가 menu1 의 sub-menu가 아닌 menu4의 sub-menu가 나와요.. 제이쿼리 적용시에는 괜찮은데 이게 혹시 나중에 문제가 있을까 걱정이 되어서요ㅠㅠ html <!DOCTYPE html> <html lang="ko"> <head> <meta charset="UTF-8"> <title>Vallery Festival</title> <link rel="stylesheet" href="css/style.css"> </head> <body> <div class="container"> <div class="left"> <header> <div class="header-logo"> <a href="#none"><img src="images/logo-header.png" alt="logo-header"></a> </div> <div class="navi"> <ul class="menu"> <li> <a href="#none">축제소개</a> <div class="sub-menu"> <a href="#none">Festival소개</a> <a href="#none">행사장 안내</a> <a href="#none">조직위원회</a> </div> </li> <li> <a href="#none">예약안내</a> <div class="sub-menu"> <a href="#none">예약하기</a> <a href="#none">예약확인/취소</a> <a href="#none">단체예약문의</a> </div> </li> <li> <a href="#none">아티스트</a> <div class="sub-menu"> <a href="#none">고릴라즈</a> <a href="#none">메이저 레이저</a> <a href="#none">아우스게인</a> <a href="#none">타임로드</a> </div> </li> <li> <a href="#none">커뮤니티</a> <div class="sub-menu"> <a href="#none">공지사항</a> <a href="#none">사진갤러리</a> <a href="#none">영상갤러리</a> </div> </li> </ul> </div> </header> </div> <div class="right"> <div class="slide"> <div> <a href="#none"><img src="images/slide-01.jpg" alt="slide-01"></a> <a href="#none"><img src="images/slide-02.jpg" alt="slide-02"></a> <a href="#none"><img src="images/slide-03.jpg" alt="slide-03"></a> </div> </div> <div class="items"> <div class="news"> <div class="tab-inner"> <div class="btn"> <span>공지사항</span> </div> <div class="tab1"> <a class="open-modal" href="#none"><em>운영위원장 후보자 추천을 받고 있습니다.</em><b>2020.01.09</b></a> <a href="#none"><em>홈커밍데이 진행위원회 결과를 다운로드 받으세요.</em><b>2020.01.07</b></a> <a href="#none"><em>카드결제 무이자 이벤트 한시적 10월 20일까지</em><b>2019.12.31</b></a> <a href="#none"><em>보안강화 시스템 작업 안내 공지</em><b>2019.12.20</b></a> <a href="#none"><em>부여 가을연꽃축제 10주년 콘서트 축제</em><b>2019.12.20</b></a> </div> </div> </div> <div class="gallery"> <div class="tab-inner"> <div class="btn"> <span>갤러리</span> </div> <div class="tab2"> <a href="#none"><img src="images/gallery-01.jpg" alt="gallery-01"></a> <a href="#none"><img src="images/gallery-02.jpg" alt="gallery-02"></a> <a href="#none"><img src="images/gallery-03.jpg" alt="gallery-03"></a> </div> </div> </div> <div class="shortcut"> <a href="#none"><img src="images/shortcut.jpg" alt="shortcut"></a> </div> </div> <footer> <div class="footer-logo"> <a href="#none"><img src="images/logo-header.png" alt="footer-logo"></a> </div> <div class="copyright"> 상호 : (주)린 | 대표자 : 최종윤 | 개인정보관리책임자 : 이주현 부장<br> 사업장주소 : 인천광역시 중구 개항로 6층 (주)이스타컴퍼니 </div> <div class="familysite"> <select> <option value="">familysite</option> <option value="">여주군청 홈페이지</option> <option value="">한국관광공사</option> <option value="">여행자보험가입</option> </select> </div> </footer> </div> </div> <div class="modal"> <div class="modal-content"> <h2>부여 가을연꽃축제 팸투어 모집</h2> <p>예비 청년상인들을 위해 진행하는 부여에서 청춘의 미래를 디자인하다. 청년창업人부여 팸투어가 12월 05일 토요일 충청남도 부여에서 진행됩니다. <br><br> 팸투어는 전액 무료로 진행되며 참가비 없습니다. 이번 팸투어에서는 부여군상권활성화재단의 청년상인 육성프로젝트를 실제로 견학하며 확인해 보실 수 있는 좋은 기회이니 창업을 희망하는 많은 청년 분들의 관심 부탁드립니다. <br><br> 온라인 및 전화 또는 메일 등으로 사전 참가신청하실 수 있습니다!</p> <a class="close-modal" href="#none">닫기</a> </div> </div> <script src="script/jquery-1.12.4.js"></script> <script src="script/custom.js"></script> </body> </html> css @charset "utf-8"; body { margin: 0; background-color: #fff; color: #333; font-size: 15px; } a { text-decoration: none; color: #333; } .container { width: 1000px; } .container > div { /* border: 1px solid red; */ float: left; box-sizing: border-box; height: 600px; } .left { width: 200px; } .right { width: 800px; } header {} header > div {} .header-logo { height: 100px; line-height: 130px; } .navi {} /* Navigation */ .menu { position: relative; width: 90%; margin: auto; list-style: none; padding: 0; } .menu li { text-align: center; } .menu li > a { border: 1px solid #000; display: block; padding: 5px; transition: 0.5s; } .menu li:hover > a { background-color: #000; color: #fff; } .sub-menu { border: 1px solid #000; position: absolute; top: -30px; left: 100%; width: 100%; height: 200px; background-color: #000; /* display: none; */ } .sub-menu a { display: block; padding: 5px; color: #fff; transition: 0.5s; } .sub-menu a:hover { background-color: #fff; color: #000; } /* Slide Animation */ .slide { width: 800px; height: 350px; overflow: hidden; } .slide > div { width: 2400px; font-size: 0; animation: slide 10s linear infinite; } .slide a { } .slide a img {} @keyframes slide { 0% { margin-left: 0; } 30% { margin-left: 0; } 35% { margin-left: -800px; } 65% { margin-left: -800px; } 70% { margin-left: -1600px; } 95% { margin-left: -1600px; } 100% { margin-left: 0; } } .items { overflow: hidden; margin-top: 20px; } .items > div { /* border: 1px solid red; */ height: 200px; float: left; box-sizing: border-box; } /* Tab Content */ .tab-inner { width: 95%; margin: auto; } .tab-inner > div {} .tab-inner .btn {} .tab-inner .btn span { border: 1px solid #000; text-align: center; width: 100px; padding: 5px; box-sizing: border-box; display: inline-block; border-radius: 5px 5px 0 0; border-bottom: none; margin-bottom: -1px; background-color: #fff; } .tab1, .tab2 { border: 1px solid #000; height: 160px; } .tab1 { padding: 0 10px; } .tab1 a { display: block; border-bottom: 1px solid #000; padding: 5px; } .tab1 a:last-child { border-bottom: none; } .tab1 a b { float: right; font-weight: normal; } .tab2 { text-align: center; } .tab2 a {} .tab2 a img { padding-top: 30px; width: 85px; } /* css 깔끔하게 */ .tab1 a { overflow: hidden; } .tab1 em, .tab1 b { float: left; } .tab1 em { width: 70%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; font-style: normal; } .tab1 em b{} .news { width: 300px; } .gallery { width: 300px; } .shortcut { width: 200px; } .shortcut img { width: 95%; } footer { overflow: hidden; } footer > div { /* border: 1px solid red; */ height: 100px; float: left; box-sizing: border-box; text-align: center; } .footer-logo { width: 200px; line-height: 130px; } .copyright { padding-top: 30px; width: 400px; } .familysite { width: 200px; padding-top: 40px; } /* Modal */ .modal { display: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.2); } .modal-content { position: absolute; background-color: #fff; width: 400px; top: 50%; left: 50%; transform: translate(-50%,-50%); padding: 20px 30px; border-radius: 10px; } .modal-content h2 {} .modal-content p { line-height: 1.6em; } .close-modal { border: 1px solid #000; padding: 5px 10px; float: right; }
-
미해결스프링 핵심 원리 - 고급편
doTransaction() 어드바이스의 return 값 의미가 궁금합니다.
안녕하세요. 좋은 강의 제공해주셔서 감사합니다. 문득... 강의를 보다 Object result 를 return 해주고 있어, 이 반환이 어떤 의미가 있는지 그리고 어느곳에서 사용을 하는지 궁금해 문의 드리고 싶습니다. 아래 코드의 7 Line 입니다. @Around("allOrder() && allService()")public Object doTransaction(ProceedingJoinPoint joinPoint) throws Throwable { try { log.info("[트랜잭션 시작] {}", joinPoint.getSignature()); Object result = joinPoint.proceed(); log.info("[트랜잭션 커밋] {}", joinPoint.getSignature()); return result; } catch (Exception e) { log.info("[트랜잭션 롤백] {}", joinPoint.getSignature()); throw e; } finally { log.info("[리소스 릴리즈] {}", joinPoint.getSignature()); }} 감사합니다.
-
미해결Slack 클론 코딩[실시간 채팅 with React]
socket 객체의 삭제에 관한 질문
안녕하세요 제로초님 ㅎ 제가 sleact프론트 만들기 강의를 듣고 express로 서버를 직접 구현해보고 있습니다. 근데 socket부분을 구현하던 중 의문이 들었습니다. workspace가 바뀌거나, 페이지 새로고침을 하면 서버에 새롭게 socket.on('connect') 요청이 가고 서버에선 새롭게 다시 통신을 합니다. onlineMap[newNamespace.name][socket.id] = id; //유저정보 기록 이렇게 새롭게 유저를 넣어주고, newNamespace.emit('onlineList', onlineMap[newNamespace.name]); 이렇게 서버로 온라인 리스트를 보내주고 콘솔에 찍어주니 새로고침할때마다 id 앞에있는 socket id가 이렇게 바뀌는데, 매번 새로고침할때마다 기존의 socket은 삭제되고, 새롭게 생성되는 것인가요? (disconnect해서 onlineList= {} 에서 삭제되는것 질문하는거아님) 그리고 DMList에서 onlineList를 가져온다음 socket.off를 해주는 이유가 무엇인가요>? 질문이 길어서 죄송합니다. 답변 기다리겠습니다!
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
메모리 데이터 조회 예제를 해보고 있는데 폼 데이터를 하나 더 추가하니 조회가 안됩니다.
안녕하세요. 회원 목록 Memory 에 저장하는거를 토대로 그냥 시간, 할 일 데이터를 받아와서 출력하는 예제를 해보고 있습니다. ( 수업 때 진행하셨던 부분을 토대로 한거라 구조는 같은데 Model에 date,work 가 저장되어 변수 하나 더 추가해서 해보는 중입니다. ) - 날짜, 할 일을 입력 받는 것까지 되는거는 확인 했습니다. - 1 을 보시면 아시다 싶이 id 값은 출력이 됩니다. 그런데 date 와 work 로 설정해놓은 데이터들이 출력이 안됩니다. 소스파일은 zip 파일로 묶어서 구글드라이브에 올려놨습니다. ( https://drive.google.com/file/d/1aTSxDKgxCr-do_l9oV0zNX3NTc7jDfRN/view?usp=sharing ) 한번 확인 가능하시면 어떤 부분을 놓치고 있는 것인지 조언 부탁드립니다.
-
해결됨[2024년 출제기준] 웹디자인기능사 실기시험 완벽 가이드(HTML+CSS+JQUERY)
select 에 option태그 관련
선생님! option태그에 value="" 이부분은 그냥 공백으로 비워놔도 상관없는지 궁금해요
-
미해결실전 리액트 프로그래밍
컴포넌트와 컨테이너의 기준
안녕하세요. 패키지 구조내의 컨테이너와 컴포넌트를 나누는 기준이 궁금하여서 질문드립니다. 강의를 듣기 이전에 state를 관리하는 부븐을 컨테이너로 props를 받아서 화면에 보여주는 것들은 컴포넌트로 나누어서 사용을했었는데요 (smart component, dumb component로 어디서 봤네요)리덕스를 사용하게되면서 컴포넌트와 컨테이너 모두 state를 받아서 사용하거나 dispatch를 이용하여 데이터를 변경할 수 있는데 어떤기준으로 패키지를 나누고 계신지 궁금합니다!
-
미해결자바 ORM 표준 JPA 프로그래밍 - 기본편
주소를 변경할 때 update문이 실행되는 이유가 뭔가요??
commit 시점에 insert문이 나가는 건 알겠는데 update 쿼리가 실행되는 이유는 잘 이해가 안됩니다 insert를 하면서 식별자와 함께 영속성 컨텍스트에 저장되기 때문에 member가 영속 객체로 취급되기 때문에 변경감지가 일어나는 건가요??
-
미해결자바(Java) 알고리즘 문제풀이 입문: 코딩테스트 대비
숫자만 추출
import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;public class Main { public static void main(String[] args) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str = br.readLine(); solution(str); } private static void solution(String str) { String result = ""; for(Character c : str.toCharArray()) { if(result.isBlank() && (c == '0')) continue; // 비어있는 상태에서 들어오는 문자가 0이면 생략 if(Character.isDigit(c)) { // 숫자면 result += String.valueOf(c); } } System.out.print(Integer.parseInt(result)); }}해당 코드에서 어떤 문제점이 있길래 컴파일 에러가 뜰까요?? 저는 잘되는데...
-
미해결[백문이불여일타] 데이터 분석을 위한 중급 SQL 문제풀이
group by와 having 질문
강의를 들으면 들을수록 그룹바이의 명확한 개념적 설명이 부족하다고 계속 느끼네요ㅠ 만약 job / salary / year 를 동시에 보여주는 테이블 company가 있다고 할 때 질문 1. group by를 쓴 1번과 쓰지 않은 2번의 차이가궁금하고, 반드시 group by를 써야하는 때가 궁금합니다. (1번) select job, avg(salary) from company group by job (2번) select job, avg(salary) from company 질문 2. having을 쓰는 1번과 where를 쓰는 2번의 차이가 뭔지 궁금합니다. having을 꼭 써야만 하고 where를 쓰지 못하는 상황 예시가 궁금해요. (1번) select job, avg(salary) from company group by jobhaving year >= 3 (2번) select job, avg(salary) from company where year >= 3 group by job
-
미해결배달앱 클론코딩 [with React Native]
아이폰 개발 하시는 분들 강의 따라해도 연결 안되시는 분들 해결 방법 알려드릴게요!
제로초님께서 말씀 하신대로 10.0.2.2 연결 안되구요. 아이폰 시뮬레이터 와이파이로 연결 시 로컬 호스트로 연결 안됩니다. 따라서 아래 방법 처럼 맥북에서 ip 찾는 법 알려드리겠습니다! 강의에서는 내 ip 찾기 라고 검색하라고 하셨는데, 정확하게 찾으려면 시스템 환경 설정 > 네트워크 > 와이파이 들어가시면 아래와 같이 떠있을 것 입니다. Wi-Fi이(가) [여러분 이름]에 연결되었고 IP 주소는 [여러분 ip 주소]입니다. 여기서 ip 주소를 .env에 넣어주시면 됩니다! API_URL = http://[여러분 IP 주소]:3105
-
미해결홍정모의 따라하며 배우는 C언어
프로그램에 할당된 메모리의 각각 메모리요소들은 서로 연접해있는가?
반갑습니다. 앞선 그림 자료들에선 프로그램에 할당된 메모리 안의 각각의 구성 메모리들 예를 들면 스택과 힙 그리고 텍스트 세그먼트 등... 이것들은 서로 연접해있는 걸로 그려져 있는데요, 실제 빌드 후 실행하면 각각 메모리들간의 차이가 상당히 큰 듯합니다. 그만큼 파일의 크기가 큰 것으로 해석해서 각 메모리요소들은 서로 연접해있다고 봐야 할지, 그림은 이해를 위한 예시일 뿐이고 각 요소들은 서로 연접해있다고 보장할 수는 없는지 궁금합니다. 고맙습니다!
-
미해결파이썬입문과 크롤링기초 부트캠프 [파이썬, 웹, 데이터 이해 기본까지] (업데이트)
5. 코끼리 1의 객체의 기능이 아니라, 냉장고 1의 객체의 기능이 아닌가요??
- 본 강의 영상 학습 관련 문의에 대해 답변을 드립니다. (어떤 챕터 몇분 몇초를 꼭 기재부탁드립니다)- 이외의 문의등은 평생강의이므로 양해를 부탁드립니다- 현업과 병행하는 관계로 주말/휴가 제외 최대한 3일내로 답변을 드리려 노력하고 있습니다- 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.
-
미해결
Open SSL 장/단점
SSL/TLS 에 대해 공부하고 있는 중인데 Open SSL 로 사설인증서를 만들어서 사용하면 비용이 절약된다는 장점이 있단건 알겠는데, 결국 브라우저가 신뢰하지 못하는 서버랑 통신할 수 있게 되는건데 그러면 TLS 의 역할을 못하는거 아닌가요? 사설인증서의 필요성에 대해 의문이 생겨서 질문 드립니다.
-
미해결성공적인 SQL 인젝션 공격을 위한, SQL 기본 문법
apmsetup 질문입니닷
안녕하세요! 아래올려주신 카페에있는 apmsetup 다운받아 설치해도 괜찮은거겠죵??
-
미해결스프링 입문 - 코드로 배우는 스프링 부트, 웹 MVC, DB 접근 기술
findByName에서 NullPointerException
<Member class> package hello.hellospring.domain; public class Member { private Long id; private String name; public Long getId() { return id; } public void setId(Long id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } } <MemberRepository> package hello.hellospring.repository; import hello.hellospring.domain.Member; import java.util.List; import java.util.Optional; public interface MemberRepository { Member save(Member member); Optional<Member> findById(Long id); Optional<Member> findByName(String name); List<Member> findAll(); // void clearStore(); } <MemoryMemberRepository> package hello.hellospring.repository;import hello.hellospring.domain.Member;import java.util.*;public class MemoryMemberRepository implements MemberRepository{ private static Map<Long, Member> store = new HashMap<>(); private static long sequence = 0L; @Override public Member save(Member member) { member.setId(++sequence); store.put(member.getId(), member); return member; } @Override public Optional<Member> findById(Long id) { return Optional.ofNullable(store.get(id)); } @Override public Optional<Member> findByName(String name) { return store.values().stream() .filter(member -> member.getName().equals(name)) .findAny(); } @Override public List<Member> findAll() { return new ArrayList<>(store.values()); }// public void clearStore(){// store.clear();// };} <MemoryMemberRepository> package hello.hellospring.repository;import hello.hellospring.domain.Member;import org.assertj.core.api.Assertions;import org.junit.jupiter.api.AfterEach;import org.junit.jupiter.api.Test;import static org.assertj.core.api.Assertions.*;public class MemoryMemberRepositoryTest { MemberRepository repository = new MemoryMemberRepository();// @AfterEach// public void afterEach(){// repository.clearStore();// } @Test public void save(){ Member member = new Member(); member.setName("spring"); repository.save(member); Member result = repository.findById(member.getId()).get(); assertThat(member).isEqualTo(result); } @Test public void findByName(){ Member member1 = new Member(); member1.setName("spring1"); repository.save(member1); Member member2 = new Member(); member1.setName("spring2"); repository.save(member2); Member result = repository.findByName("spring1").get(); assertThat(result).isEqualTo(member1); }} 이런 오류가 발생합니다 name 도 전부 확인 해봤고 afterEach도 써봤지만 계속해서 같은 오류가 납니다.
-
미해결파이썬 알고리즘 문제풀이 입문(코딩테스트 대비)
조합으로 구하면 안되나요?
선생님 이 문제 부분집합으로 푸셨는데, 조합으로 구하면 안되나요? 부분집합과 조합의 차이가 무엇인가요? 아래처럼 조합으로 코드 짰는데 선생님께서 푸신 답변과 비슷한듯 다르네요. for i in range(s, n+1)을 없이 푸셨는데... 조합에서는 필요하지 않나요? def DFS(s, money): global max if s > (n+1): return if s == (n+1): if money > max: max = money for i in range(s, n+1): if i+graph[i][0] <= (n+1): DFS(i+graph[i][0], money+graph[i][1]) DFS(i+1, money) n = int(input()) graph = [] for _ in range(n): a, b = map(int, input().split()) graph.append([a, b]) graph.insert(0, [0, 0]) max = -2147000000 DFS(1, 0) print(max)
-
미해결쉽게 시작하는 쿠버네티스(v1.25)
C드라이브에 비어있는 공간이 부족할 경우
[질문 전 답변]1. 강의 내용과 관련된 질문인가요? [예 | 아니요]2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? [예 | 아니요]3. 질문 잘하기 법을 읽어보셨나요? [예 | 아니요](https://www.inflearn.com/blogs/1719)4. 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요.[질문 하기] C드라이브에 여유공간이 부족해 D드라이브에 가상머신을 설치하려고 합니다. 어떻게 해야 할까요? VirtualBox에서 마스터 노드의 저장소 설정을 보면 40G로 되어있는데, 현재 C 드라이브에 약 20G의 여유공간만 있습니다. 감사합니다.
-
미해결[개정판] 딥러닝 컴퓨터 비전 완벽 가이드
MMdetection으로 학습한 모델 윈도우에서 사용 문의 및 기타 질문이 있습니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요 드디어 Mask RCNN 까지 들었습니다 (중간에 남은게 있지만... ㅠㅠ) 선생님 덕분에 Detection의 전반과 훈련 inference까지 이해하게 되어 정말 감사드립니다 1. 저 같은 경우 서비스를 제공하는데 엔드유저가 윈도우를 사용하기 때문에 아무래도 윈도우에서 적용이 가능하게끔 만들고 싶습니다. 현재는 텐서플로 기반이라 Pyqt로 로컬프로그램을 만들어 제공하고 있는데 MMDetection이 리눅스에서만 적용되어서 로컬 프로그램으로는 한계가 있을까요? 이를테면 MMDetection이나 Detectron으로 만든 모델만 Pytorch로 불러온다든지 그런 사례가 있는지 궁금합니다 AWS로 웹서버를 구축하는 법도 있겠지만 보안문제도 있고 그쪽 지식은 부족해서 여쭈어 봅니다 2. 또한 Detection 모델은 여러가지 물체는 한번에 잡지만 visualization을 할때는 for 문을 쓸수밖에 없는 구조인가요? 만약 물체가 1000개씩 있으면 오히려 visualization이 병목이 될 수도 있을 것 같은데 제가 이해한 것이 맞는지 문의드립니다 멀티프로세싱 같은 것을 통해 잡아야 하는것인가요? 3. 마지막으로 강의에서는 MMdetection으로 faster rcnn이나 mask rcnn을 다뤄주셨는데 solo, yolact를 비롯한 다른 최신 모델들도 포함되어 있어서 좋은 것 같습니다 이런 최신 모델들도 cfg만 바꾸어 사용하면 되나요? yolact를 사용해봤는데 debuging을 해봐야겠지만 training 이후 여러 이미지 inference에서 문제가 있는거 같아 혹시 MMdetection이 faster rcnn, mask rcnn 계열에만 최적화 되어있는지 아님 다른 모델을 적용할 때 주의사항이 있는지 문의드립니다 항상 감사드립니다!!
-
미해결파이썬/장고 웹서비스 개발 완벽 가이드 with 리액트
브라우저에서 회원가입시 SMTP 에러가 발생합니다
안녕하세요? 벌써 두번째 인사드리는 것 같은데, 몇번이나 인사를 드릴까봐 겁나네요 ㅠㅠ 우선 그전 강의의 끝에서 마지막까지 진행한 후, 회원가입을 했을 때 다음과 같은 에러가 발생합니다 아마 메일이 발송될 수 없다는 것 같은데요 쉘에서는 다음과 같이 발송이 됩니다. 실제로 제 메일로 발송된 것을 확인했습니다. 아마 문제가 실제 브라우저에서 회원가입시 문제가 되는 부분이, env.bat파일때문이지 않을까 추측하고 있습니다.(윈도우 환경입니다) 일단 env.bat파일을 다음과 같이 만들어 두었습니다 set SENDGRID_API_KEY=SG.-sXxPoBP~ 그냥 sendgrid_api_key만 적어두니까 env.bat이라는 cmd명령어를 실행했을 떄, 실행이 되지 않더라구요.. 아무튼 제 추측이 맞다면, 항상 저 명령어가 실행되도록 해서 API_KEY를 가지고 있도록 해야할 것 같은데.. ㅠㅠ 답변 부탁드리겟습니다 ㅠㅠ 늘 좋은 강의와 성실한 답변 감사합니다.