상세 컨텐츠

본문 제목

[후기] 나의 첫 파이썬(2판)

Experience/book

by 주인장 minamiland 2020. 10. 21. 20:19

본문

#2073

앞쪽 문법과 관련된 부분은 나중에 천천히 접해 보기로 하고 책 중에서 가장 관심 있었던 부분인 후반 웹사이트를 만드는 부분으로 무작정 따라 하면서 진행해 보았습니다. 기본적으로 들여 쓰기에 대한 실수를 빼고는 큰 무리 없이 학습을 진행할 수 있었던 것 같습니다.

인스톨 성공!!!
두껍습니다..

한 가지 빼곤 전체적으로 따라 하면서 무난하게 진행할 수 있었던 것 같습니다. 한 가지란 Heroku에 배포하는 것과 관련된 것입니다. 배포 과정을 따라 할 때 가장 많은 에러를 접하게 되었는데 나중에 다시 도전해 봐야 할 것 같습니다.

각종 Error와의 조우

첫 번째 Error

전 우선 python3(3.8.5)을 기준으로 진행해 봤었습니다.

// 문제가 되었던 부분
$ pip install psycopg2==2.7.*

// 해결책
$ pip install psycopg2-binary

첫 번째로 발생했던 문제는 psycopg2의 설치부터 였습니다. 해결 방법은 psycopg2-binary를 설치하는 것이었습니다. 검색을 하다 보니 공식적(?)으로는 그리 추천하지 않는 방법이라고 하는 것 같습니다만..

두 번째 Error

어찌어찌 진행하였고 드디어 heroku에 배포를 하려고 하는데..

// heroku에 push
$ git push heroku master

// 에러 발생
Error while running '$ python manage.py collectstatic --noinput'.

해당 에러 발생시 DISABLE_COLLECTSTATIC=1을 실행하라는 가이드에 따라 진행하였고 다시금 push.

$ heroku config:set DISABLE_COLLECTSTATIC=1

$ git push heroku master

세 번째 Error

이번엔 또 다른 문제가 발생했었습니다.

// push에 따른 에러
Error: Multiple apps in git remotes

// remote의 브런치를 확인
$ git remote -v

// 중복되는 브런치를 삭제
$ git remote rm <branch name>

중복되는 브런치를 확인해서 브런치를 삭제해 주었습니다. 동일한 이름으로 브런치가 생성되어 있어서 결국 rm명령어로 삭제 후 heroku create로 자동 생성되었던 레파지토리도 사이트 측에서 삭제 후에 다시금 heroku create를 이용해서 새롭게 작성 후 진행했습니다.

네 번째 Error

이젠 되겠지 싶어 다시 push. 그러나 또 다른 메시지가 나오네요... 이번엔 브런치:main로 진행하라는 것이었습니다.

$ git push heroku master

// 브런치 뒤에 :main을 붙여서 진행
$ git push heroku master:main

다섯 번째 Error

이젠 되겠지 했더니.. 이번에 컴파일 사이즈가 허용범위를 초과했다고 나왔습니다. 일단 배포하는 과정은 여기서 멈추기로 했습니다..

Compiled slug size: 501.8M is too large (max is 500M).

VSCODE 플러그인

이번에 스터디를 하면서 사용한 에디터는 VSCODE였습니다. 그냥 작성할 경우 생기는 class has no object member라는 오류가 발생하는 것을 확인했습니다.

실제로 학습과정에서 이 에러로 문제가 생기진 않았습니다만. 코딩을 하다 보면 계속 신경이 쓰이는 부분이었는데 settings.json에 다음과 같은 코드를 추가시켜서 해당 문제를 해결할 수 있었습니다.

"python.linting.pylintArgs": [
    "--load-plugins=pylint_django"
  ],

마무리

전 세계 50만 부 판매 베스트셀러의 개정판!

책이 두껍기도 하고 몇몇 파이썬 입문서를 본 적이 있기도 해서 어눌하지만 실전형에 가까운 웹 서비스 부분을 제일 먼저 접해 봤었습니다. 하나하나 따라 하면서 실제로 움직이는 것을 확인하는 건 역시 재미있네요.

친절한 설명들을 확인해 보세요

각 파일별로 해당 문장에 대한 설명을 붙여주고 있어서 인기가 있는 서적의 이유를 알 것 같았습니다.

제 작업환경이 Heroku와 궁합이 맞지 않았던 것 같은데 무료로 이용 가능한 파이썬 호스팅을 이용해서 다시 도전해 봐야 할 것 같습니다. 이번에 알게 된 무료 호스팅은 Heroku와 pythonanywhere입니다.

pythonanywhere.com

 

Host, run, and code Python in the cloud: PythonAnywhere

Batteries included With Python versions 2.7, 3.3, 3.4, 3.5 and 3.6, and all the goodies you normally find in a Python installation, PythonAnywhere is also preconfigured with loads of useful libraries, like NumPy, SciPy, Mechanize, BeautifulSoup, pycrypto,

www.pythonanywhere.com

heroku.com/

 

Cloud Application Platform | Heroku

Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.

www.heroku.com

 

관련글 더보기

댓글 영역