전체 글

전체 글

    사용자 매출 통계 부분 로직을 짜면서 한 번 보단 두번.

    사용자 - 사용자의 정보에는 로그인 정보와 가입날짜가 있습니다. 사용자의 매출 정보 - 매출날짜, 매출액 등 예) 1번 사용자, 매출액 1만원, 매출날짜 2023-09-01 2번 사용자, 매출액 2만원, 매출날짜 2023-09-02 1번 사용자, 매출액 3만원, 매출날짜 2023-09-03 통계하고 싶은 데이터 - 사용자별 가입일 이전, 이후 매출 * 가입일 이후 기간은 가입일 이후 부터 현재 날짜까지 -> 6개월 넘을 경우 오늘 날짜 부터 6개월 전까지만 기간 계산 * 가입일 이전 기간은 가입기간 - (현재날짜 - 가입일 기간만큼) -> 최대 6개월이다. 기존 적용 로직 사용자의 매출 정보에 status 0 을 주어 해당 매출이 통계로 사용되었는지 확인 0 - x, 1 - o 사용자의 status가 0..

    pyqt QLabel pen, brush로 테두리 그리기

    label = OutlinedLabel(self.test.format("0"), alignment=Qt.AlignCenter, textFormat=Qt.RichText) label.setPen(QColor(255, 249, 177)) label.setBrush(QColor(171, 171, 173)) label.setStyleSheet("QLabel{background-color: #dbdbdb; border: solid; font-family: 나눔스퀘어; font-size: 32pt; font-weight: bold;}" "QLabel:hover{background-color: #2d2801;}") self.ui.horizontalLayout_2.addWidget(label) class Outline..

    pyside, pyqt QGraphicsDropShadowEffect 로 그림자 효과줄 때

    구글링을 통해 삽질 30~40분 label text에 하이라이트 같은 효과 처럼 주고 싶었는데, css는 않먹힘. 구글링을 해보니 GraphicsDropShadowEffect()로 그림자 효과를 줄 수 있다고 함. shadow = QGraphicsDropShadowEffect() shadow.setBlurRadius(0) shadow.setColor(QColor(255, 249, 177)) shadow.setOffset(1, 1) self.ui.label.setGraphicsEffect(shadow) 근데 아무리해도 적용x shadow = QGraphicsDropShadowEffect(self) shadow.setBlurRadius(0) shadow.setColor(QColor(255, 249, 177)..

    파이썬 셀레니움 크롬드라이버 ChromeDriverManager 버전 오류 feat.230818 수정

    *********************************************** 20230818 - 크롬 드라이버 매니저 라이브러리 최신버전으로 업데이트 하면 해결됩니다. ------------------------------------------------------------------------------------- 삽질 시간 : 1시간 삽질 사유 : 크롬이 자동으로 업데이트 되어버렸습니다. 크롬은 업데이트 되었지만 크롬 드라이버 버전이 업데이트가 안된 상태. There is no such driver by url 오류 이때, ChromeDriverManager().install() 을 통해 자동 최신 드라이버로 설치하여 사용하려면 문제가 발생함. ChromeDriverManager 는 현재..

    파이썬 dict list 특정 key 로 중복제거

    자주쓰는데 계속 찾기 귀찮아서 씀 dict 특정 key 중복 list({v['id']:v for v in data}.values()) https://sanghaklee.tistory.com/60 [Python] 리스트 딕셔너리 중복 제거 python how to remove duplicate dict in list https://stackoverflow.com/questions/11092511/python-list-of-unique-dictionaries dict 전체 중복 # 순서가 보장되지 않음 list(map(dict, set(tuple(sorted(d.items())) for d in data))) # 순서가 보장 sanghaklee.tistory.com

    vue 부트스트랩 페이지네이션 가운데 정렬

    기존 코드 https://bootstrap-vue.org/docs/components/pagination BootstrapVue Quickly integrate Bootstrap v4 components with Vue.js bootstrap-vue.org 분명 docs에는 align="center" 하면 가운데 정렬이 되는 걸로 나온다. b-row, b-col 로 바꾸고 cetner 과 cols="auto"를 추가하니 가운데 정렬이 되었다.

    mysql insert where not exists 사용법

    사용법을 알기 위한 삽질시간 : 10분 mysql에 같은 데이터가 여러개 들어갈 수 있도록 테이블을 설계했고 여러개 들어가도 상관없지만 굳이 같은 데이터가 여러개가 필요없기 때문에 하나만 insert 되도록 해야되었다. INSERT INTO user( user_id, user_name ) select #{userId}, #{userName} from users WHERE NOT EXISTS ( SELECT user_id, user_name FROM users WHERE user_id = #{userId} and user_name = #{userName} ) 3번째 줄에 select #{userId}, #{userName} 가 insert 될 values 값이다. 참고 dto로 파라미터 사용시 파라미터 개..

    파이썬 logging 에서 setLevel 이 not work 할 때

    삽질 30분 삽질 사유 콘솔에 로그가 찍히도록 StreamHandler 를 추가하고, 파일에도 찍도록 FileHandler 를 추가했다. 정상적이게 콘솔에 찍히고, 파일에도 출력됩니다. 그런데, 나오지 않았던 다른 라이브러리에 debug 로그가 쭉 찍히는걸 보고 setLevel를 INFO 레벨로 설정했는데 왜 나오지? 했는데, 30분의 삽질 끝에 각 핸들러에도 로그 레벨 설정이 가능한걸 알았다. import logging from logging.handlers import TimedRotatingFileHandler # 로그 생성 logger = logging.getLogger() # 로그의 출력 기준 설정 logger.setLevel(logging.INFO) # 여기 설정 했는데 적용이 안된다! # 로..