Django

django 프로젝트 생성, 서버 연결, App 생성 & 등록

monster route 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 두 개만 잘 보면 된다.