본문 바로가기

django6

[AWS] EC2로 Django 서버 배포해보기 EC2는 Elastic Compute Cloud라고 해서 AWS에서 제공하는 독립적인 컴퓨터 서버이다. AWS가 제공하는 클라우드상에 나만의 서버를 하나 만듦으로써 서버구축에 필수적인 금액적인 요소나 보수, 관리 등을 본인이 부담을 안해도 되기 때문에 수많은 개인이나 기업이 사용하고 있는 서비스이다. 이제 오늘 들었던 강의를 바탕으로 기억을 되짚어 보면서 만들었던 Django 테스트 서버를 EC2에 올려보는 작업을 까먹지 않도록 하나하나 정리해보자..!! 1. EC2 인스턴스 생성 EC2인스턴스 이름을 생성하고, [애플리케이션 및 OS이미지]항목에는 Ubuntu22.04 LTS버전을 골랐다.(우분투의 경우 프리티어가 지원되어 무료로 사용가능하다.) 인스턴스 유형도 마찬가지로 프리티어가 지원되는 t2.mi.. 2022. 7. 20.
[Django] ~ 장고프로젝트 앱 생성까지 진행 장고프로젝트 생성 ~ 앱 생성까지 참고한 블로그 https://velog.io/@nonasking/Django-tutorial-Django%EB%A1%9C-%EC%95%B1-%EB%A7%8C%EB%93%A4%EA%B8%B0 Django tutorial: Django로 앱 만들기 장고의 기능과 기본 프레임 포스팅Django tutorial: Django로 앱 만들기 예제(https://docs.djangoproject.com/ko/3.1/intro/tutorial01/)기본 순서(아래 3개끼리는 순서 상관 없음)가상환경, 디렉토리 세팅 velog.io 2022. 5. 30.
[Django] settings.py에서 SECRET KEY 관리하기 프로젝트를 github에 올릴 때 조심해야될 사항 중 한가지가 비밀 키를 노출시키면 안된다는 것이다. AWS cloud를 이용할 때에도 AWS access key나 secret key들을 장고의 settings.py에 다 넣어놓게 되는데 이거 노출되면 과금폭탄 맞을수도 있다. 따라서 api key(노출돼도 괜찮은 api key도 존재한다)을 포함한 여러가지 key값에 대해서 관리가 필요하다. 기존에는 최상위폴더에 secrets.json파일을 따로 만들어서 아래 사진과 같이 settings.py에서 secrets.json의 경로를 알려주고 secrets.json파일을 gitignore에 등록하는 방식으로 관리했는데,, 이번에 설명할 방법은 json파일이 아닌 python파일로 간단하게 관리하는 방식이다. .. 2022. 5. 18.
[Django] form입력 받는 세가지 방법 이전에 했던 프로젝트에서는 장고에서 form을 사용할 때 html파일에서 태그를 이용해서 작성했다. codelion강의를 듣다가 훨씬 더 편리한 방법이 있다는걸 깨닫고.. 까먹지 말자는 차원에서 다시 정리하는 글이다. 우선 모델은 다음과 같이 title, body, date속성을 갖는 Blog모델을 하나 정의했다. 1 2 3 4 5 6 7 8 9 10 11 # models.py from django.db import models class Blog(models.Model): title = models.CharField(max_length=200) body = models.TextField() date = models.DateTimeField(auto_now_add=True) def __str__(self.. 2022. 5. 12.
[Django] static파일 관리하기 웹서비스 내부 데이터를 다음과 같이 둘로 나눌 수 있다. static: 미리 준비된 데이터(css, js, img파일) media: 사용자가 업로드한 데이터(웹상에서 동적으로 부여되는 파일) 우선 본인도 장고로 프로젝트를 해봤지만, 배포단계를 거치지 않는 바람에 static파일들에 대해서 잘 모른채로 그냥 static 폴더를 만든 다음에 css나 js 파일을 만들어서 당연하다 싶이 사용한 경험이 있다. 후에 장고기반 프로젝트에 꼭 필요하다 싶은 내용일 것 같아 다시 정리를 해보았다. 장고는 settings.py에서 STATIC_URL, STATICFILES_DIRS, STATIC_ROOT세개로 static파일들을 관리한다. 그럼 다음 세가지의 변수가 무엇을 의미하는지 살펴보자. STATIC_URL 브라우.. 2022. 5. 11.
[Django] 크롤링한 데이터 DB에 저장하기 설명에 앞서 Django개발 환경 세팅까지 완료된 상태임을 가정한다. parsed_data라는 app을 생성했다. DB로는 Django의 sqlite를 활용하며 현재 title과 link을 갖는 BlogData모델을 하나 만든상태이다. 1 2 3 4 5 6 7 8 9 10 11 # models.py from django.db import models # Create your models here. class BlogData(models.Model): title = models.CharField(max_length=200) link = models.URLField() def __str__(self): return self.title cs manage.py와 같은 위치에 parser.py파일 하나 생성(여기.. 2022. 5. 4.