ENCORE CLOUD ARCHITECTURE TIL 1/29

신민창·2021년 1월 29일
0

TIL

목록 보기
4/46

Django

Django의 MTV(Model Template View) 아키텍처

Django 설치

VS Code에서 폴더 생성 후 열고 터미널에서
pip install Django 입력

설치 완료되면
django-admin startproject myDjangoSite 입력

그리고 애플리케이션을 생성하기 위해서
cd myDjangoSite로 이동한 후
python manage.py startapp polls 입력
하면 좌측에 디렉토리들이 생성될 것이다.
(polls안에 있는 templates 제외

이제 프로젝트 설정 파일을 변경해야 한다.

setting.py로 가서

ALLOWED_HOSTS = []를
로 바꿔준다.

또 그 밑에 INSTALLED_APPS= []에 가서
'polls.app.PollsConfig', 를 추가해준다.

이제 기본 테이블을 생성하기 위해서 터미널에
python manage.py migrate를 입력하면 좌측 디렉토리에

이 파일이 생성될 것이다.

다음으로 관리자 계정을 생성하자.
터미널에 python manage.py createsuperuser 를 입력하여 username, password를 생성하면 된다.

만들었으면 제대로 동작하는지를 확인하기 위해 서버를 실행시킬 것이다.
터미널에 python manage.py runserver를 입력한다.

그러면 아래에서 두번째 줄과 같이 아이피 주소가 생성될 것이다. 그 아이피 주소로 들어가보면
로켓이 보일것이다. 그러면 잘 동작된 것이다.

그 다음으로 해당 주소에서 /admin을 추가하여 페이지를 이동하면 관리자 페이지가 생성될 것이다.

방금 만들어놓은 계정으로 로그인하면

이런 화면이 보일 것이다.

여기까지가 장고 웹 어플리케이션의 기본 골격이다.

[Django 웹 어플리케이션 개발]
1) 다음과 같이 Question 테이블과 Choice 테이블을 생성하겠습니다.

  1. Model 개발 순서
    1) 테이블 정의 : models.py 편집
    2) Admin 사이트에 테이블 반영: admins.py 편집
    3) 데이터베이스 변경 사항 반영: manage.py makemigrations
    manage.py migrate

필요한 테이블은 models.py 파일에 정의.
models.Model 을 상속하는 클래스를 작성.

models.py 내용을 다음과 같이 작성

2) Admin 사이트에 테이블 반영: admins.py 편집
Admin 사이트에 Users, Groups 테이블만 보였는데, models.py 파일에서 정의한 테이블도 Admin 사이트에 보이도
록 등록
admin.py

이렇게 작성한 내용을 데이터베이스에 반영한다.
터미널에
python manage.py makemigrations
python manage.py migrate 를 입력후
python manage.py runserver를 실행하여 admin으로 접속하면

입력한 부분이 추가된 것을 볼 수 있다.

  1. View와 Template 개발

myDjangoSite/urls.py 편집

흰색 표시 부분을 코드에 추가한다.

그 후 myDjangoSite/polls/urls.py(파일 새로 생성)
해당 코드를 작성한다.

그 후 뷰 index를 작성해야 한다.

polls/view.py를 편집

해당 코드를 작성한다.

그 후 polls 디렉토리 하위에 templates/polls 디렉토리를 생성한다.
그리고 생성한 polls 폴더에 index.html 파일을 생성 후 작성한다.

{%%}는 파이썬 코드라는 뜻

이제 다시 서버를 실행시켜서 admin으로 접속한 다음 Question과 Choices에 아무거나 채워보자.
그리고 다시 아이피주소/polls로 이동하면 채워넣은 것들을 볼 수 있다.

0개의 댓글