설치가 안되시는 분들께 참고되시길 바래용! 우선 제 터미널은 Ubuntu(wsl2) 고용 (1) 스킨 프로젝트 디렉토리로 이동해서 (2) 해당 위치에서 npm install - g tidory (3) 티도리 프로젝트 설치 $ npx create-tidory-app my-app (Thank you for... Succesful 나오면 성공) $cd my--app (생성된 My-app 디렉토리로 이동) $npm install 요러케 순서대로 하심 되용!
안녕하세요, 제 상황은 UID column 을 그냥 제 임의대로 만들었었어요. 그래서 강의를 따라할 때 UID 값이 제대로 들어가지 않았습니다. 제 db 는 강의 처럼 data 가 들어갈 때마다, 1 씩 늘어나지 않았습니다. 저처럼 임의대로 UID column 을 만들었을 때 해결했던 방법을 알려드리겠습니다. 저와 비슷한 상황이면 도움이 될 수도 있을 것같아요. 1) 임의로 만든 UID COLUMN 삭제 임의로 만든 UID 를 삭제해야하는 이유는 auto_increment 설정을 하려면, 해당 column이 primary key 형태여야 하기 때문입니다. ALTER TABLE user DROP UID; 2) UID를 PRIMARY KEY 로 추가 밑의 명령문을 입력하면, user 테이블의 가장 마지막 COLUMN 에 UID 가 추가될 것입니다. ALTER TABLE user ADD UID int PRIMARY KEY; 3) UID 를 AUTO INCREMENT 설정 ALTER TABLE user MODIFY UID int NOT NULL AUTO_INCREMENT; 여기에 NOT NULL 을 붙이지 않으면, localhost:3000/join 에서 아이디, 이름, 비번을 넣고 제출하고 다음과 같은 에러를 얻습니다. code: 'ER_NO_DEFAULT_FOR_FIELD', errno: 1364, sqlMessage: "Field 'UID' doesn't have a default value", 4) UID COLUMN 을 강의처럼 맨 앞에 붙이기 ALTER TABLE user MODIFY COLUMN UID int FIRST; 5) 잘 되었나 테스트 해보기 INSERT INTO user(email, name, pw) VALUES("hi@naver.com", "hello", "0000"); // data 넣기 select * from user; // user table 확인해보기 참고한 링크 공유합니다 [MySQL] 테이블에 데이터 입력하기 INSERT INTO - 가벼운 블로그 (tistory.com) MySQL : auto_increment (값 자동증가) 및 초기화방법 및 초기화 되지 않을때 : 네이버 블로그 (naver.com) [오라클] PRIMARY KEY 삭제시 유의할 점 (tistory.com) [MySQL] 테이블에 데이터 입력하기 INSERT INTO - 가벼운 블로그 (tistory.com) 코딩의 시작, TCP School MySQL 테이블 컬럼 순서 바꾸기 - 제타위키 (zetawiki.com) 그누보드 QA - SQL에서 INSERT사용시 INTO 대신 SET을 사용한 이유가 궁금합니다! (sir.kr)
해당 강의가 속한 로드맵에서 김영한님이 추천하신 야생형 코스로 듣다가 지금 궁금한건 못 참아! 하고 기본편 부터 이 강의로 잘 듣고 있다는 리뷰를 본 것 같아요 혹시 그런 분이 여기서 또 궁금해 하실까봐 + 저도 활용편 다시 들을때 더 잘 기억나려고 ㅎ 활용편에서 준영속 관련해서 알려주시는 부분 남김니다 [JPA 활용편 1] 강의 [섹션7 > 변경 감지와 병합(merge) ] 이부분은 확실히 활용편 코드랑 봐야 좋은 것 같아요😀
그래들 의존성은 아래와 같아요 dependencies { testImplementation 'org.junit.jupiter:junit-jupiter-api:5.6.0' testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine' testCompile group : 'junit' , name : 'junit' , version : '4.11' compile group : 'org.hibernate' , name : 'hibernate-entitymanager' , version : '5.3.10.Final' compile group : 'mysql' , name : 'mysql-connector-java' , version : '5.1.6' implementation "jakarta.xml.bind:jakarta.xml.bind-api:2.3.2" implementation "org.glassfish.jaxb:jaxb-runtime:2.3.2" } persistence.xml <? xml version ="1.0" encoding ="UTF-8" ?> <persistence xmlns ="http://xmlns.jcp.org/xml/ns/persistence" version ="2.1" > <persistence-unit name ="hello" > <class> 패키지.클래스 </class> <properties> <!-- 필수 속성 --> <property name ="javax.persistence.jdbc.driver" value ="com.mysql.jdbc.Driver" /> <property name ="javax.persistence.jdbc.user" value ="root" /> <property name ="javax.persistence.jdbc.password" value ="비밀번호" /> <property name ="javax.persistence.jdbc.url" value ="jdbc:mysql://localhost:3306/root?serverTimezone=UTC & characterEncoding=UTF-8" /> <property name ="hibernate.dialect" value ="org.hibernate.dialect.MySQL5Dialect" /> <property name ="hibernate.show_sql" value ="true" /> <property name ="hibernate.format_sql" value ="true" /> <property name ="hibernate.use_sql_comments" value ="true" /> </properties> </persistence-unit> </persistence> 이렇게 설정해야 강의듣는데 문제가 없더라구요! 클래스 태그 안에는 패키지 명, 클래스 이름 넣어주시면 됩니다. 비밀번호는 mysql 계정 비밀번호 입력하시면 됩니다! 야생형으로 시작해서 gradle이 편하더라구요!ㅎㅎ 강의를 듣는데 저처럼 gradle, mysql로 진행하시는 분이 계시다면 이렇게 설정하시고 시간 절약하세요!
풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]
개인적으로 정말 도움 많이 되고 있습니다. 패캠에 다른 강의도 보고있었는데 목소리가 같아서 혹시나 했는데, 같은 강사님 이였더라구요 . 감사합니다 . 좋은 가격에 고민을 많이 하신 흔적이 강의에 녹아있어 듣는 내내 감동입다. 꾸준히 보고 용기 얻고 가겠습니다 감사합니다.
## 브라우저를 제어해서 트위터 사이트 로그인 하기 from selenium import webdriver from selenium.webdriver.common.keys import Keys import time chromedriver = 'D:\WebDriver\chromedriver.exe' headless_options = webdriver.ChromeOptions() headless_options.add_argument('headless') headless_options.add_argument('window-size=1920x1080') headless_options.add_argument("disable-gpu") headless_options.add_argument("User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_4) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36") headless_options.add_argument("lang=ko_KR") # driver = webdriver.Chrome(chromedriver, options=headless_options) driver = webdriver.Chrome(chromedriver) driver.get('https://twitter.com/') # 트위터 버튼 클릭하기 time.sleep(3) login_btn = driver.find_element_by_xpath('//a[@href="/login"]') login_btn.click() # 아이디/비밀번호 입력하기 time.sleep(3) id_input = driver.find_element_by_css_selector('#react-root > div > div > div.css-1dbjc4n.r-13qz1uu.r-417010 > main > div > div > div.css-1dbjc4n.r-13qz1uu > form > div > div:nth-child(6) > label > div > div.css-1dbjc4n.r-18u37iz.r-16y2uox.r-1wbh5a2.r-1wzrnnt.r-1udh08x.r-xd6kpl.r-1pn2ns4.r-ttdzmv > div > input') id_input.clear() id_input.send_keys('id') password_input = driver.find_element_by_css_selector('#react-root > div > div > div.css-1dbjc4n.r-13qz1uu.r-417010 > main > div > div > div.css-1dbjc4n.r-13qz1uu > form > div > div:nth-child(7) > label > div > div.css-1dbjc4n.r-18u37iz.r-16y2uox.r-1wbh5a2.r-1wzrnnt.r-1udh08x.r-xd6kpl.r-1pn2ns4.r-ttdzmv > div > input') password_input.send_keys('password') password_input.send_keys(Keys.ENTER) time.sleep(6) driver.quit() 2021.05 기준으로 트윗 페이지 크롤링은 위 코드 참고하시면 좋을 것 같습니다. send_keys('id') 부분에 id 넣고 send_keys('password') 부분에는 비번 넣으시면 됩니다. (* 크롬 웹드라이버 경로 설정도 본인 것에 맞게 설정하셔야합니다.)
pytube 10.7.2 버전을 사용하고 있습니다. 본문처럼 q.res를 호출하면 다음 에러가 발생합니다. 'Stream' object has no attribute 'res' 공식 문서 참고해보니 res가 아닌 resolution으로 해상도를 선언하는 것 같습니다. (https://pytube.io/en/latest/_modules/pytube/streams.html) 오류 나시는 분들은 q.res 를 q.resolution 으로 수정하시면 해결될 것 같습니다.