ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • django 프로젝트 생성, 서버 연결, App 생성 & 등록
    Django 2024. 8. 10. 22:46

    django 프로젝트 생성 이어서..

     

    vs code > 터미널

     

     

    이렇게 아래 명령어로 프로젝트 생성을 해주면

     

    django-admin startproject my_first_pjt

     

     

     

    이렇게 바로 파일이 생성되고 뭔가가 많이 만들어진걸 확인할 수 있다.

     

     

     

    *참고 만약 이 폴더를 지우고 싶다면 ↓

     

    rm -rf (지우고자 하는 폴더명)

    rm -rf my_first_pjt

     

     

    그리고 

     

    생성한 해당 프로젝트 폴더 안쪽으로 이동해준다.

    cd my_first_pjt

     

     

    드디어, 장고 개발 서버 실행

    python manage.py runserver

     

     

    롸? 😟

     

     

    강의대로 라면...ㅠㅠ 이런 링크가 뜨고 커맨드 클릭하고 저 링크 타고 들어가면 첫 장고 웹페이지가 나오고 축하 메시지가 나오면서 환호성이 터저야 되는데...

     

     

     

    내 vs code 는 이런 모습을 하고 있었다.

     

    응? 누가 썼어.....ㅠㅠㅠㅠㅠ😥

     

    뭐.. 구글링해야지..^^ 8001번 쓰라고 해서.. 오키..

     

    8001 포트로 runserver 해달라고 하니 링크가 나오긴 함.

     

    들어가보니..

    이런화면이 나온다..  세상에..🫢

     

    지금 화면캡처한 이 이미지는 '0.0.0.0:8000'으로 되어 있는데.. 처음에 8001로 되어 있었다. 혹시 몰라서 8000으로 바꿔봐도 동일하다..ㅎ 이러나 저라나 실패..

     

    뭐... 일단 끄고..

     

    vs code 돌아와서 ctrl c 로 종료..

    8000번 포트 사용중인거면...사용 안 하게 한 다음 사용하면 되지 뭐..

     

    그래서 다시 구글링,

    8000번 포트 프로세스를 종료하는 방법을 찾았다. 명령어는 다음과 같다. 직관적이네 kil

    sudo lsof -t -i tcp:8000 | xargs kill -9

     

     

    그 다음, 다시 터미널에 python manage.py runserver 를 입력해서 실행한다.

     


    드디어.. 첫 장고 서버 연결 성공...

    휴..  🤭

     

     

    아까는.. 폴더 이름을 my_project_pjt 로 만들어놓고는... 우재튜터님께 찾아가서

    '튜터님 저 분명히 튜터님이랑 똑같이 만들고 cd my_first_pjt 해서, python manage.py runserver 이거 했는데 자꾸 이런 에러가 뜨네요...  왜 그럴까요..? 🤔' 라며

     

    세상 심각한 표정으로 상담을 했다...ㅠㅠ.. 하.. 얼마나 황당하셨을까.. 난 이제 코드는 커녕.. 글자도 못 읽게 된거..ㅠㅠㅠㅠ 내가 만들었잖아...

     

     

    아무튼..

     

     

    암튼 장고 프로젝트 폴더를 열면  뭐가 많은데..

     

    프레임워크를 살펴보면

     

    • settings.py : 프로젝트의 설정을 관리하는 곳
    • urls.py : 어떤 요청을 처리할지 결정하는 곳
    • __init__.py : 하나의 폴더를 하나의 파이썬 패키지로 인식하도록 하는 파일로서, 3버전 이상으로 가면 없어도 된다. 3버전 이하에서도 동작하게 만들어주는 기능으로 호환성을 위해 지키는 규칙이다.
    • wsgi.py : 웹 서버 관련 설정 파일이다. 보통 위즈기 라고 읽음
    • manage.py : Django 프로젝트 유틸리티 (장고 프로젝트를 조종할 수 있는 조종기)

     

    우리가 지금 봐야하고 잘 사용해야 할 건 settings.py urls.py 이 두 가지👌 

     


     

    Django App

     

    • Django App == 내가 생각하는 하나의 기능 덩어리!

    보통 하나의 프로젝트는 여러개의 앱으로 구성된다고 볼 수 있다.

     

     

    프로젝트와 앱

    • 프로젝트(Project) : 어플리케이션의 집합체
    • 앱(App) : 프로젝트 안에 들어가는 각각의 기능 단위 모듈

     

    그렇다면  앱을 사용하기 위해선 어떤 과정이 필요할까? 🤔 이 두가지 과정이 꼭 필요하다. 

    1. App 생성하기
    2. App 등록하기

     

    만약, 우재튜터님이 A 앱 만들어주세요 라고 하면, A 앱을 생성하고 → A 앱을 등록하면 되는거다.

     

     

    그럼 직접 만들어보자. vs code로 와서,

     

    지금 있어야 되는 위치는 여기다. 안쪽 폴더 말고 위 쪽 폴더! 

     

    (그래야 장고 프로그램을 조종할 수 있는 조종기인 manage.py를 사용할 수 있다)

     

     

    Django에서는 앱의 이름을 복수형으로 짓는 걸 권장한다👌

     

    app 생성

    python manage.py startapp <앱 이름>

     

    터미널에 아래 명령어로 이렇게 articles 라는 앱을 만들어준다. 

    python manage.py startapp articles

     

    그럼 왼쪽에 바로 articles 앱이 생성된 걸 확인할 수 있다. 

     

    이제 등록만 하면 된다.

     

    app 등록

    등록은 settings.py 파일을 열어주고

     

    코드를 살펴보면 INSTALLED_APP 부분에 현재 우리 프로젝트에 등록된 app 목록이 보이는데 여기에 우리가 생성한 articles 앱을 추가해주면 된다.

     

    마지막에 콤마를 붙이는 건 다음에 앱을 추가할 때 까먹지 않을 수 있고 편리하기 떄문이다. 이걸 Trailing commas 라고 한다.

     

    자 그럼,

    앱을 만들고 등록까지 했으니까 app안에 뭐가 있는지 한번 살펴볼까?🤔

     

     ·  admin.py : 관리자용 페이지 관련 설정

     ·  apps.py : 앱 관련 정보 설정

    ★ models.py : DB관련 데이터 정의 파일

     ·  tests.py : 테스트 관련 파일

    ★ views.py : 요청을 처리하고 처리한 결과를 반환하는 파일

     

    지금 우리는 models.py 와 views.py 두 개만 잘 보면 된다.

     

     

Designed by Tistory.