장뽀장뽀! 기능 뽀개기!

춤추는망고·2020년 5월 5일
0
post-thumbnail

슈퍼개발자, 춤추는망고입니다.

( 춤 안춥니다. )





이번 시리즈는...

백엔드로 가는길,

장뽀장뽀! 장고 뽀개기!


입니다.
( 우와아아아앙아ㅏㅏㅏㅏ~!!!! )












장고! 어떤 것들을 품고있니?






일단,

우리가 장고를 사용할 용도는

장고! Front-End 에서 요청이 오면, 그에 맞는 응답을 해라!

인데요!






지난 글에서 봤던 구조인,

mango_project
   ├── manage.py       <- 장고 프로젝트의 핵심 프로그램!
   └── mango_project
       ├── __init__.py
       ├── asgi.py
       ├── settings.py <- 장고 프로젝트의 설정 프로그램!
       ├── urls.py     <- URL 값에 대한 제어를 하는 프로그램!
       └── wsgi.py

에서는

데이터베이스를 다루는 프로그램,

기능을 동작하도록 하는 프로그램

이 등장하지 않았었죠?






사실,

저희는 프로젝트를 시작했을 뿐, 어떠한 기능도 생성하지 않았어요!

우리가 장고라는 것을 이용해서, 무언가를 시작하겠다!

라는 부분까지만 작업했을 뿐이죠!






이번에는,

프로젝트의 존재 이유인 ' 기능 ' 에 대한 생성을 해보고,

완전체가 된 장고의 ' 전체적인 구조 ' 를 확인해볼거에요!






기능을 생성해봅시다!

1. 터미널로 프로젝트 폴더에 위치해 주세요!

2. ls 명령어를 통해, 현재 위치에 ' manage.py ' 가 있는지 확인해주세요!

3. 확인이 되셨다면, 아래 명령어를 터미널에 입력해주세요!

python manage.py startapp '기능 이름'

4. 'tree' 명령어를 입력해주세요!

( 아래처럼 보이실거에요! )

mango_project
    ├── make_juice
    │   ├── __init__.py
    │   ├── admin.py
    │   ├── apps.py
    │   ├── migrations
    │   │   └── __init__.py
    │   ├── models.py
    │   ├── tests.py
    │   └── views.py
    ├── manage.py
    └── mango_project
        ├── __init__.py
        ├── __pycache__
        │   ├── __init__.cpython-38.pyc
        │   └── settings.cpython-38.pyc
        ├── asgi.py
        ├── settings.py
        ├── urls.py
        └── wsgi.py

5. 엄청나게 복잡해진 프로젝트에 한번 놀라주세요! ( 헉! )

기능생성 끝!






이제, 기능의 틀을 생성했으니


내가 원하는 내용을 넣기전에,

' 어디어디를 건드려야하나... '

를 먼저 확인해보죠!



프로젝트 전체지도!

mango_project                 <- 프로젝트 이름
    ├── make_juice            <- 기능을 관리하는 폴더
    │   ├── __init__.py
    │   ├── admin.py
    │   ├── apps.py
    │   ├── migrations        <- 데이터베이스와 관련된 부분
    │   │   └── __init__.py
    │   ├── models.py         <- 데이터베이스를 다루기 위한 프로그램
    │   ├── tests.py
    │   └── views.py          <- 기능을 동작하도록 하는 프로그램
    ├── manage.py             <- 장고 프로젝트의 핵심 프로그램!
    └── mango_project         <- 프로젝트의 전반적인 설정을 관리하는 폴더
        ├── __init__.py
        ├── __pycache__
        │   ├── __init__.cpython-38.pyc
        │   └── settings.cpython-38.pyc
        ├── asgi.py
        ├── settings.py       <- 장고 프로젝트의 설정 프로그램!
        ├── urls.py           <- URL 값에 대한 제어를 하는 프로그램!
        └── wsgi.py

( 헉... 복잡쓰... )



걱정마세요!

사실상 자주 건드리는 부분은 저 중에서 일부에요!

기능이 여러개가 되더라도, 기능 안에서 건드려야하는 부분은 다 똑같아요!



참고로,

제 프로젝트 이름은 ' mango_project ' 이고,

기능 이름은 ' make_juice ' 에요!

( 따라오실때, 헷갈리실까봐... )






이제,

저 기능을 프로젝트에서 사용할 수 있게 설정해줍시다!

settings.py 파일을 열어주세요!

( 기능이 여러개 생겨나도, 프로젝트 안에서 이 이름을 가진 파일은 딱 하나에요! )
( ㄷ... 두개라면, 프로젝트 지웠다가 다시 시작하시는게... )

1. ' INSTALLED_APPS ' 라고 적힌부분을 찾아주세요!

( 아래 모양처럼 생겼을거에요! )

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders',
]

2. 위에서 찾은 부분의 맨 밑에 ' 만드신 기능의 이름 ' 을 적어주세요!

( 아래 모양처럼 보일거에요! )

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders',
    '만드신 기능의 이름',
]

( 저는 이렇게보여요 ㅎ )

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'corsheaders',
    'make_juice',
]

프로젝트에 기능등록 끝!










여기까지!




이번 글에서는,

프로젝트의 기능을 생성하고, 전체적인 구조를 알아봤습니다!

( 프로젝트에 기능을 사용할 수 있도록 등록하기도 했죠! )




다음 글에서는,

완전체가 된 장고의 세부적인 구조를 알아볼겁니다!










백엔드 개발자가 다루는

많은 프레임워크 중 하나

장고를 함께 뽀개봅시다!





고생하셨습니다.

감사합니다.( _ _)

profile
지금까지 이런 망고는 없었다. 이것은 개발자인가 춤추는망고인가

0개의 댓글