본문 바로가기

Django

(43)
34. 파이보 오픈 AWS 라이트세일로 서버를 생성했으니 서버에 파이보를 설치해 오픈해보자. 먼저 SSH를 사용해 서버에 접속하자. 접속하면 호스트 명이 ip-172-26-3-166 으로 되어있는데 sudo hostnamectl set-hostaname 명령으로 바꿀수 있다. 바꾼 후 에는 sudo reboot 명령으로 재시작 하자. 그 후 서버 시간설정을 바꾸자. date 명령을 해보면 시간이 UTC 시간이 출력된다. 이것을 sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime 명령을 하면 date 명령을 해 다시 시간을 확인해보면 KST 로 변경된것을 알 수 있다. 장고를 사용하려면 파이썬이 설치되어 있어야한다. python 명령어를 입력해 파이썬이 설치되어있는지 확인해..
33. 서버 접속 설정 및 프로그램 AWS 서버에 접속하기 위해서 고정IP 와 방화벽 해제가 필요하다. 고정 IP는 말그대로 IP가 변하지 않고 고정된 IP 이다. 먼저 AWS 라이트세일의 메인화면에서 네트워킹 탭을 눌러 고정 IP 생성을 누르자. 버튼을 누르면 인스턴스 선택에서 Ubuntu-1 을 선택 후 생성 버튼을 누르자. 그렇게 하면 고정 IP주소가 생성된다. 파이보 서비스의 기본 포트 번호가 8000이다. 외부에서 8000번 포트로 접속하려면 방화벽 해제 작업을 해야 한다. AWS 메인화면에서 인스턴스 탭에서 Ubuntu-1 을 눌러보자. 그 후 네트워킹 탭에서 아래 [ + 규칙추가 ] 버튼을 누르자. 포트 또는 범위에 8000을 누른 후 생성을 누르자. 이렇게 하면 8000 포트의 방화벽 해제를 했으므로 외부에서 고정 IP 의 ..
32. 서버 우리가 지금까지 제작한 파이보를 누구나 사용할 수 있게 하려면 서버를 열어야 한다. 서버를 위해 장비를 사고 설치하고 관리하는데에 많은 시간과 돈이 필요하지만 요새는 클라우드 시스템으로 서버를 이용하면 모든 절차가 생략된다. 이번에는 Amazon Web Service, AWS 를 사용할 것이다. AWS는 조금 비싸지만 AWS Lightsail 로 저렴하게 서버를 구성해보자. AWS 라이트세일은 아마존에서 운영하는 웹서비스 특화 클라우스 서비스다. 그리고 AWS 라이트세일 첫 3개월 무료이기 때문에 이것으로 서버를 열어보자. 먼저 AWS 에 가입해보자. 가입할 때 영문주소를 써야하는데 이 사이트에서 영문주소를 번역해서 가입하자. http://juso.go.kr 주소정보누리집(도로명주소 안내시스템) juso..
31. 깃허브 저번에 깃을 이용해 저장소를 생성하고 소스코드를 관리했다. 이것을 원격 저장소로 관리하기 위해 깃허브를 사용하자. 먼저 깃허브에 가입을 하자. new repository 를 해서 새로운 원격 저장소를 생성하주자. 그렇게 하면 이러한 URL이 나오는데 이것을 로컬 저장소와 연결해주는것이다. 터미널에 git remote add origin 을해서 연결하자. 이 명령을 한 후 오류가 발생하지 않으면 git push -u origin main 명령어를 치면 깃허브의 Username 과 Password 를 치는곳이 나오는데 Username 을 치고 Password 를 쳐야한다. 하지만 맥 기준으로는 깃허브의 비밀번호가 아닌 token을 입력해줘야한다. 이 토큰은 깃허브에서 세팅-개발자세팅-토큰 에서 토큰을 만들어..
30. 깃 코드를 작성하다보면 수정과 삭제가 빈번하게 발생하고, 과거에 삭제한 부분을 살리거나 언제 어느부분을 수정했는지 확인해야할 때 가 있기도 하다. 여러명이서 작업할 때는 소스코드를 여러명이서 수정하고 왜 수정했는지 이유가 필요할 때가 있다. 이를 위해 Git 을 설치하고 사용해보자. 터미널에 git --version 이라고 쳐서 버전이 나오면 다운로드가 되어있는것이다. 안나온다면 Homebrew 를 설치하고 brew install git 을 해서 git을 다운로드하자. 먼저 저장소(repository)을 만들자. 그리고 git status 명령을 실행하자. git status 는 현재 저장소의 상태를 출력해 준다. 아직 관리되지 않고 있는 파일(Untracked files)들을 보여주고 git add 명령을..
29. 파이보 추가 기능 https://wikidocs.net/75418 3-15 파이보 추가 기능 이 책에서 구현할 파이보의 기능은 아쉽지만 여기까지이다. 함께 더 많은 기능을 추가하고 싶지만 이 책은 파이보의 완성이 아니라 파이보를 성장시키며 얻게 되는 경험을 전달하는 것을… wikidocs.net 현재 이 튜토리얼을 따라 장고를 배우고 있는데, 이 책에서 구현할 기능은 여기까지지만 우리가 평소에 사용하는 게시판을 생각해보면 알듯이 더 다양한 기능들이 있다. 댓글, 카테고리, 비밀번호 찾기 및 변경, 프로필 등 이있다. 이런 것들은 나중에 따로 공부해보면 추가해보겠다. 그 전에 이 책의 저자가 더 다양한 파이보 기능들을 구현해 놓은 파이보 게시판이있다. 들어가서 확인해보면 완성형의 파이보 게시판을 볼 수 있다. https:/..
28. 검색 기능 게시판에서 검색기능은 필수이다. 검색의 대상은 제목, 질문의 내용, 질문의 작성자, 답변의 내용, 답변의 작성자가 있다. 이런 조건으로 검색하려면 질문 목록을 조회하는 부분을 다음처럼 수정해야 한다. 일단 눈으로만 보자. from django.db.models. import Q kw = request.GET.get('kw', '') # 검색어 if kw: question_list = question_list.filter( Q(subject__icontains=kw) | # 제목 검색 Q(content__icontains=kw) | # 내용 검색 Q(answer__content__icontains=kw) | # 답변 내용 검색 Q(author__username__icontains=kw) | # 질문 글쓴이..
27. 마크다운 질문이나 답변을 작성할 때 일반적인 텍스트 외에 글자를 진하게 표시하거나 링크를 추가하고 싶을 경우 '마크다운' 이라는 글쓰기 도구를 입력하면 표현할 수 있다. 먼저 마크다운의 문법을 간단하게 알아보자. [마크다운 문법] 목록을 표시하기 위해 * 파이썬 * 장고 * 알고리즘 이런식으로 글을 쓸 때 작성하면 위의 문자열을 마크다운 해석기가 HTML로 변환하면 실제 화면에서는 다음과 같이 보인다. ● 파이썬 ● 장고 ● 알고리즘 순서가 있는 목록을 표시하려면 1. 하나 1. 둘 1. 셋 이렇게 글을 작성하면 1. 하나 2. 둘 3. 셋 이런식으로 변환되어 작성된다. 작성한 글자를 강조하려면 장고는 **파이썬**으로 만들어진 웹 프레임워크이다. 이런식으로 강조할 텍스트 양쪽에 **을 넣어주면 장고는 파이썬으로..