2. 장고 프로젝트, 앱 만들기

Pywiki
Sam (토론 | 기여)님의 2021년 11월 3일 (수) 16:49 판 (→‎앱)
둘러보기로 가기 검색하러 가기

1 프로젝트

1.1 장고 설치

python -m pip install --upgrade pip 으로 pip를 업그레이드 해준 후, pip install django로 설치한다.

1.2 프로젝트 만들기

장고는 프로젝트 안에 여러 개의 앱으로 구성되는 구조이다.

가상환경을 사용한다면 그 이후에 진행하자.

과정 방법 비고
프로젝트 디렉터리 생성 프로젝트를 둘 디렉터리를 설치한다.
프로젝트 생성 django-admin startproject config . 프로젝트 디렉터리가 될 곳 안에서 실행('.'은 현재 위치라는 의미.)

config 말고 다른 이름도 가능하지만, 추후에 바꾸기 어렵기 때문에 일반적으로 사용하는 config를 권장한다.

DB생성 python manage.py migrate DB변경사항을 반영하라는 명령이다.
서버작동 python manage.py runserver 서버를 돌린 후 http://localhost:8000 으로 들어가 작동이 되는지 확인해본다.

이게 된다면 기본적인 작동에 대한 문제는 없다.

1.3 관리자 등록

관리자페이지를 이용하기 위해선 관리자로 등록되어 있어야 한다.

과정 방법
관리자등록 python manage.py createsuperuser

이후 안내되는 메시지대로 작성한다.

관리자페이지 도메인주소/admin에 들어가면 관리자페이지가 나온다.


2

일정한 기능들을 모은 것.

2.1 앱을 나누는 이유

다양한 기능들을 분화해서 관리하면 수정에도 편하고, 기능의 관리, 파악에도 편하다.

예컨대, 회원관리 기능을 만들었는데, 다른 프로젝트에서 또다시 회원가입 기능을 만들 땐 단순히 프로젝트 내의 코드를 옮기는 경우가 많았다. 그러나, 앱처럼 모듈화 해두면 필요한 기능을 그냥 통째로 사용하면 된다.

2.2 앱 만들기

2.2.1 앱 이름은 특이하게 짓기

주로 앱 이름을 account나 profile 등으로 만드는 경우가 있는데... 장고와 연동된 라이브러리에서 저런 일반적인 이름을 차지해버리는 경우가 있다. 이렇게 이름이 겹쳐버리면.. 차라리 처음부터 만드는 게 나을 정도로 복잡해진다. 때문에 처음부터 앱 이름을 구체적이고 특이하게 만드는 편이 좋다.

2.2.2 앱 만들기 과정

과정 방법 비고
생성 django-admin startapp 앱이름 프로젝트 디렉터리 안에서 실행.

그냥 단순히 앱 이름의 디렉터리를 만드는 것 뿐. 기존의 앱을 옮겨온다면 그냥 붙여넣기를 하면 된다.

설정클래스 등록 Settings.py에 앱 등록config/settings.py 안에...

INSTALLSED_APPS 항목에 추가한다.

INSTALLSED_APPS 항목 안에 앱이름만 추가해준다. ex)
INSTALLED_APPS = [ 'django.contrib.admin',
                'django.contrib.auth',
                'django.contrib.contenttypes',
                'django.contrib.sessions',
                'django.contrib.messages',
                'django.contrib.staticfiles',
                '앱이름', ]

혹은 앱의 config를 직접 등록해준다. 앱디렉터리의 apps.py 안의 Config를 직접 등록해줘도 된다. 앱.apps.앱이름Config형식으로.

앱 이름이 account라면 account.apps.AccountConfig를 등록한다.

삭제 그냥 단순히 앱 디렉터리를 지우고 settings.py에서 등록한 앱을 지워주면 된다.

이후 MVT를 작성하면 된다.