IT/파이썬 2024. 2. 2.
Pydantic none 오류 처리 방법 - Optional 사용
Django ninja 로 API Schema를 만드는데 None type으로 정희한 부분에서 에러가 발생했다. Null이 들은 필드의 값을 받아오는 Schema에서 기본값으로 None을 주면 Exception이 발생하지 않은 것 같은데 갑자기 발생하네 response.items.1.manager2_position Input should be a valid string [type=string_type, input_value=None, input_type=NoneType] For further information visit https://errors.pydantic.dev/2.6/v/string_type 에러 내용은 대충 이러했다. class ProductInSchema(ModelSchema): note..

IT/파이썬 2023. 4. 25.
파이썬 코드 웹 실행 사이트
파이썬 코드를 웹에서 실행할 수 있는 몇 가지 사이트가 있습니다. 다음은 그 중 일부입니다 Repl.it (https://repl.it/) 이 사이트에서는 파이썬 코드를 작성하고 실행할 수 있으며 다양한 언어를 지원합니다. PythonAnywhere (https://www.pythonanywhere.com/) 이 사이트에서는 파이썬 코드를 작성하고 실행할 수 있으며 웹 애플리케이션을 호스팅하는 기능도 제공합니다. Google Colab (https://colab.research.google.com/) 이 사이트에서는 Jupyter 노트북 형식으로 파이썬 코드를 작성하고 실행할 수 있습니다. 또한 머신러닝 및 데이터 분석과 관련된 다양한 라이브러리가 사전 설치되어 있습니다. Repl.it에서 코드를 공유 ..

IT/파이썬 2021. 11. 17.
파이썬 라이브러리 패키지 업데이트 방법 - 한꺼번에 여러개
pip install 로 설치된 파이썬 라이브러리를 업데이트 하는 방법을 알아보자. 물론 아주 쉽다 --upgrade 만 붙여주면 끝이다 파이썬 패키지 업데이트 먼저 현재 설치된 패키지 라이브러리를 다들 아시는 바와 같이 하나의 파일로 쫙 만들어 보자. 물론 output 파일 명은 꼭 requirements.txt 일 필요는 없지만 거의 모든 프로젝트들이 이렇게 쓰고 있으니 그냥 쓰자. pip freeze > requirements.txt 이 파일을 열어보면 아래 처럼 막 나열되어 있다. dateparser==1.0.0 defusedxml==0.7.1 Django==3.2 django-debug-toolbar==3.2.1 django-ninja==0.16.1 여기서 "==" 부분을 업그레이드 업데이트를 ..

IT/파이썬 2021. 8. 19.
CircuitPython - UART read / write 시리얼 읽고 쓰기
물론 Adafruit 페이지에 가면 가장 기본적인 읽기 정도는 나와 있다. CircuitPython UART Serial https://learn.adafruit.com/circuitpython-essentials/circuitpython-uart-serial CircuitPython Essentials You've already gotten started with CircuitPython. What's next? CircuitPython Essentials! This guide provides examples of all the core modules and some of the common libraries found in CircuitPython and how they're used. You'll ..

IT/DB 2021. 8. 3.
Mongoengine 키, 인덱스 등록시 2개 이상 필드로 unique 등록
하나의 필드가 하나의 키나 인덱스로 작용이 되면 unique=True 이렇게 편하게 주면 되는데, 2개의 필드가 합쳐야 유일한 키가 되는 경우는 어떻게 하나? 당연히 선지자들은 많이 해본 경험으로 이런 함수를 만들어 두었네 unique_with='같이고려해야하는필드명' 이렇게 선언부에 넣어두면 된다는 말씀. 원본 문서에서 가져옴 https://docs.mongoengine.org/guide/defining-documents.html#uniqueness-constraints 2.3.3.6. Uniqueness constraints MongoEngine allows you to specify that a field should be unique across a collection by providing un..

IT/파이썬 2021. 7. 27.
파이썬 동작 로그 파일 저장하기 - flask gunicorn logging
무슨 로그 파일 저장하는 것이 이렇게나 어렵노? Flask + Gunicorn + Nginx 이렇게 궁합을 싸 놓으니, 어데 저장되는지 누가 주체인지도 모르겠고 어렵다. 그냥 내가 원할 때 저장하고 파일 위치도 쉽게 알 수 있으면 되는데..... 일단 아래 코드 적용해서 돌려보니 작업 디렉토리에 파일이 생기긴 하네. 잘 모르지만 일단 아래 코드로 적용 원본 코드 위치 - https://gist.github.com/andrisasuke/0d5958c076fcf44e6a15c9d99d9c8c86 flask logging gunicorn and file flask logging gunicorn and file. GitHub Gist: instantly share code, notes, and snippets...

IT/파이썬 2021. 7. 27.
윈도우 flask gunicorn 에러 발생 시 대안 - No module named 'fcntl'
윈도우 환경에서 아래와 같이 Flask 과 Gunicorn 환경을 실행 시키려고 하면 아래와 같은 에러가 발생한다. gunicorn --bind 0.0.0.0:8000 wsgi:app fcntl 을 찾을 수 없다고... pip 로 설치하려 해도 윈도우 환경에서는 설치가 안된다. ModuleNotFoundError: No module named 'fcntl' 그럼, 포기~~~ 역시 인터넷에는 답이 있다. 그대로 쓸 수는 없지만 환경을 확인하는 정도는 가능하다. Gunicorn 대신에 waitress 를 사용하면 대충 비슷하게 돌릴 수 있다. 먼저 설치하고, > pip install waitress 아래와 같이 실행 시킨다. > waitress-serve --listen=*:8000 wsgi:app 답변 참..

IT/DB 2021. 7. 15.
MongoDB - 이미지 파일 같은 바이너리 데이터 입력하기
요거요거 DB 에 바이너리 데이터를 입력해 둬야 한다. 머 FTP를 이용해서 파일은 따로하고, DB에는 Meta 데이터만 넣고 처리할 수 있으나 한번에 되는게 효율적이긴 하고 사용자도 더 편리할 듯~~~~ 다행히 MongoDB 를 쓰기 위해 사용준인 MongoEngine에는 FileField 라는 것이 정의되어 있다. 간단하게 사용할 수 있는 예제를 아래 페이지에서 찾아 낼 수 있었다. https://www.tutorialspoint.com/mongoengine/mongoengine_gridfs.htm MongoEngine - GridFS - Tutorialspoint MongoEngine - GridFS In MongoDB, the files with size larger than 16 MB are s..

IT/DB 2021. 6. 21.
Flask MongoEngine 쿼리 filter() 함수 문자열 - Query Operators
Flask MongoEngine 쿼리 filter() 함수 문자열에 대해서 정리해 둬보자. (사실 해본거 하나만 더 적어두자, 해본거니깐) 맨날 = 만 쓰려니 MongoEngine 홈페이지에 가면 다양한 operator 가 있다 쿼리로 사용할 수 있는, 가장 기본적인 예제로 아래와 같이 18세 이하 사용자를 찾아라 같은 예제가 있다. # Only find users whose age is 18 or less young_users = Users.objects(age__lte=18) 즉, 필드명에다가 언더스코어 2개를 넣고 원하는 기능어를 넣으면 쿼리 스트링이 완성된다. 필드명__operator 오퍼레이터의 종류는 아래와 같다. https://docs.mongoengine.org/guide/querying...

IT/파이썬 2021. 6. 15.
Flask 와 React 를 결합한 서비스 - 자료 조사
JS 만큼 강력한 파이썬을 활용하기 위해 Flask 백엔드에 대세라고 할 수 있는 React 프론트엔드 서비스 개발. 이리저리 검색중. 나중에 읽을 필요가 있을 글들을 여기에 모아둬 본다. 정리할 글은 계속 나오겠지. 읽어봐야할 글들 https://kimsehwan96.tistory.com/entry/React-%EB%B9%8C%EB%93%9C%EB%90%9C-%EC%95%B1-Flask-%EC%97%90-%EC%98%AC%EB%A6%AC%EB%8A%94-%EB%B0%A9%EB%B2%95 React 빌드된 앱 Flask 에 올리는 방법 React APP을 플라스크 서버 위에 호스팅하기. yarn build 한 index.html 파일을 그대로 flask 에서 리턴하게 했더니 안되어서 시작한 테스트. ya..

IT/DB 2021. 6. 11.
mongodb - Flask mongoengine을 이용하여 필드 추가, 삭제
이미 설계 이후에, 스키마가 변경되어서 다큐먼트 필드가 추가되거나 삭제되는 경우가 있다. 이때 새로운 레코드는 해당 필드가 있는데, 기존 레코드에 없다면 좀 이상하기도 합니다. 혹은 필드를 삭제하는 경우도 있어 이경우도 기존 DB 에 반영해야 한다. Mongoengine 을 이용하는 경우 해당 클래스에 필드를 추가, 삭제하고 난 뒤에, 추가된 필드의 경우 아래처럼 모든 objects 에 해당 필드값을 채워주기만 하면 된다. 해당클래스.objects.update(추가필드1=0,추가필드2="") 삭제되는 필드의 경우 아래처럼 명령을 내리면 해결된다. 해당클래스.objects.update(unset__code=True) # Note: code 라는 필드를 없애라 BJ. Markus Winkler 님의 사진, ..

IT/DB 2021. 4. 30.
MongoDB 백업하기 - mongodump
무슨 긴말이 필요할까? 그냥 성공한 명령어 저장 mongodump --out ~/저장디렉토리명 --host 127.0.0.1 --port 27017 -u 사용자명 -p 패스워드 --db 백업원하는DB명 --authenticationDatabase admin 딱 성공하면 아래처럼..저장디렉토리명 아래에 DB 이름으로 백업되어 있음을 볼 수 있다. 생각보다 파일 사이즈가 크네. 머 아무튼 성공 이제 복원해보러 가야지. 2021.03.18 - [IT/DB] - MongoDB 복원하기 - mongorestore MongoDB 복원하기 - mongorestore 백업 했으니 복원도 테스트 해봐야지 말이 필요없다. 성공한 내용은 아래와 같다. mongorestore --host 127.0.0.1 --port 270..

IT/파이썬 2021. 4. 15.
Windows 10 SDK 설치 - dll 오류 같은 것이 나면
(아직 작성중인 글로 해결중인 블로그 글입니다. 최종 업데이트 하면 이 메시지는 사라집니다.) 그냥 Windows 10 SDK 설치를 하세요. 여러모로 좋아요 Pyinstaller dll 오류가 많이 나서 찾아보니, 이런 답변이 많네요. api-ms-win-core- dll 같은 것들이 오류나 로그에 많이 나타나네요 윈도우 10에서는 WARNING: lib not found: api-ms-win-core-*.dll같은 에러가 출력되는데 이를 해결하기 위해 아래의 페이지를 참고하자. developer.microsoft.com/en-us/windows/downloads/windows-10-sdk/ Windows 10 SDK - Windows app development Windows App Certifica..
