pipreqs – requirements 뽑기
virtualenv 를 사용하면 사실 좋긴 한데, 그게 아닌 경우에 대해서 개발 서버에서 작업했을때 requirements.txt 를 뽑기가 어렵다. requirements.txt 가 필요한 이유는 서버에 세팅시 pip install -r 옵션을 통해서...
virtualenv 를 사용하면 사실 좋긴 한데, 그게 아닌 경우에 대해서 개발 서버에서 작업했을때 requirements.txt 를 뽑기가 어렵다. requirements.txt 가 필요한 이유는 서버에 세팅시 pip install -r 옵션을 통해서...
API에서 파라미터의 유효성 검사는 필수적인 요소이긴 하지만, 개발자로서 여간 귀찮은 일이 아닐 수 없다. API의 양이 많을수록 할 일은 많아진다. 세세하게 체크할 부분은 해야하지만 기본적으로 파라미터 유무, 파라미터의...
파이썬 관련 파이썬 코리아 격월 세미나 파이썬 코리아의 세미나는 자주 열리지 않는 편인데, 12/17일에 격월 세미나가 열렸었다. 다음번 격월 세미나를 기다려본다. 웹 개발, 왜 어려운가? 오픈소스 네이밍 특징들...
flask 에서 json 데이터를 받아서 처리할 때 reqeust.get_json() 혹은 request.json 을 이용할 수 있는데, mime type을 application/json 타입으로 보내는데, {} 없이 빈 JSON 문자열 조차도 안 보내는 경우가...
파이썬 관련 Python 3.6: A quick look 지난주 Python3.6.0 RC1 이 나왔다고 했는데, Pycharn 2016.3 버전에서 Python3.6을 어떻게 지원하고 있는지에 대해서 설명하고 있다. 특히 f-string 에 대해서 Pycharm에서...
파이썬 관련 Python 3.6.0 RC1 Python3.6.0 Release Candidate1 에 대한 내용을 담고 있다. 에 가면 좀더 자세한 내용을 볼 수 있다. CPython 구현 개선에 대한 내용이 있는데, dict...
파이썬에서 데코레이터를 정말 자주 사용하고 있지만 다양한 용례는 접해보지 못했었다. Ned Batchelder의 글 Isolated @memoize은 @memoize 데코레이터에 대한 이야기인데 같이 곁들여진 설명과 각 링크가 유익해서 번역했다. 파이썬 데코레이터...
파이썬을 처음 공부할 때 리스트와 튜플에 대해 비슷한 의문을 가진 적이 있었다. 이 둘을 비교하고 설명하는 Ned Batchelder의 Lists vs. Tuples 글을 번역했다. 특별한 내용은 아니지만 기술적인 차이와...
파이썬을 사용하다보면 setup.py와 requirements.txt를 필연적으로 마주하게 된다. 처음 봤을 때는 이 둘의 용도가 비슷하게 느껴져서 마치 둘 중 하나를 골라야 하는지, 어떤 용도로 무엇을 써야 하는지 고민하게 된다....
Python을 실무에서 많이 사용하고 있지 않긴 하지만 사용할 때마다 재미있고 깊게 배우고 싶다는 생각이 늘 드는 언어 중 하나다. 관심을 갖기 시작했을 때부터 PyConAU에 다녀오고 싶었는데 이전엔 브리즈번에서...
Two scoops of django 책의 5장, ‘settings와 requirements 파일’을 보고 개인 프로젝트에 두 가지를 리팩토링해야겠다는 생각이 들었다. 비밀 값(e.g. OAuth 토큰) 코드에서 분리 환경별로 settings 파일 분리 제일...
제목자체가 역설적이지만, 이렇게 써야 할때가 있다. 예를들면, 레거시를 다시 재개발하는 수준에서 특정 프로시저는 단순히 db를 조회하는 것 이상의 프로그래밍적인 기능을 가지고 있을때가 있다. 또한, 다른 이유로 ORM인 SQLAlchemy와...
Pycon APAC 2016 후기 from SeongHyun Ahn 파이콘 관련 글을 쓰고 있는 중인데, 위의 슬라이드는 회사에서 팀내에 공유한 내용이다. 별 다른 후기가 있는것은 아니고 이런 행사도 있다는 것,...
Flask 에서 개발을 할 때, Debug 옵션을 키고 app 에 기본 내장된 개발서버를 사용한다. 그런데 파일을 수정하면 재시작하는 기능은 좋은데, host 나 port 를 지정해 놓고 사용하다가 변경할때...
pep8, flake8 등의 툴이 파이썬 코드의 정적검사를 하는 툴이다. $ python -m pip install flake8 flake8 --count --exclude ./tests,./docs --ignore E501,F401 # --count : 위반 개수 표시 #...
Admin Form 커스터마이즈하기 class QuestionAdmin(admin.ModelAdmin): fields = ['pub_date', 'question_text'] # 필드 순서 조정 admin.site.register(Question, QuestionAdmin) # 두 번째 인자로 위에 만든 model admin class를 넘긴다. class QuestionAdmin(admin.ModelAdmin): fieldsets...
프론트엔드에서 Javascript로 온갖 삽질을 하다가, 그냥 서버사이드에서 처리하기로 했다. 훨씬 깔끔하게 끝났다(물론 이것도 삽질했지만 ^^). HTML Canvas로 한 프론트 리사이징은 이미지 퀄리티도 안좋게 떨어진다. 웬만하면 파일 처리는 서버사이드에서...
엑셀의 경우, 백오피스나 CMS 등에서 import/export 에 사용하기 때문에 기능구현 할 때 XlsWriter 를 이용해서 구현했던 적이 있었다. 그에 비해서 워드 문서를 생성해 내는 작업은 별로 없었다. 발단은...
매주 python관련 뉴스들이 오는데 이번에는 흥미로운 것이 있어서 이렇게 남긴다. Create Your Own Shell in Python: Part 1 Create Your Own Shell in Python: Part 2 supasate/yosh yosh 프로젝트로 간단히 Python을...
상황 근 한 달 이상 Review브랜치에서 리뷰 개발을 하고 있다. 너무 옛날 코드라 Master의 최신 코드와 Rebase했다. 바뀐 쿼리들을 적용하려고 ./manage.py migrate를 치니 ./manage.py migrate CommandError: Conflicting migrations...
앞으로 예시들에 사용할 모델. 글 하나에 블로그 여러 개 중 하나가 연결되어있고, author는 m2m. class Blog(models.Model): # 블로그 name = models.CharField(max_length=100) tagline = models.TextField() def __str__(self): return self.name...
필드(Fields) from django.db import models class Musician(models.Model): first_name = models.CharField(max_length=50) last_name = models.CharField(max_length=50) instrument = models.CharField(max_length=100) class Album(models.Model): artist = models.ForeignKey(Musician, on_delete=models.CASCADE) name = models.CharField(max_length=100) release_date = models.DateField()...
위의 스샷은 mac상에서 pycharm 이나 터미널에서 mysql 연동을 위한 파이썬 MySQL-Python을 설치 시 발생하는 오류로, mac 에 mysql을 설치해준 후 다시 설치하면 된다. brew install mysql export PATH=$PATH:/usr/local/mysql/bin...
서버에 있는 로그를 웹상의 타인에게 보여줘야 할 경우가 있는데(가급적 이런 경우는 좋지 않은 상황인 경우이다.) 어떻게 할까 찾아보다가 python으로 된 tailon이라는 쉽게 커맨드 명령어로 띄울 수 있는 툴이...
상황 페이스북 로그인을 하고, 페이스북 연결 해제버튼을 눌렀을 때 비밀번호가 설정이 되어있지 않다면 비밀번호 설정 페이지로 리다이렉트 시키고 싶다. 이로 인해서 들어온 비밀번호 설정 페이지에서는 그냥 들어왔을 때와는...
Atom 에디터로 파이썬 개발하는 것을 추천하지 않는 글입니다. Atom 은 Sublime Text 3 와는 다르게 기본적으로 코드를 실행할 수 없다. 코드를 실행하기 위해서는 script 라는 Atom 패키지를 설치해야...