-
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 두 개만 잘 보면 된다.
'Django' 카테고리의 다른 글
Django Model, Migration, ORM, Database API (0) 2024.08.16 Django HTTP Form (0) 2024.08.14 Django Template System (DTL 문법, 템플릿 상속) (0) 2024.08.13 Django MTV 패턴, Templates 작성 (0) 2024.08.12 Django 장고 설치, 가상환경, 프로젝트 생성 (1) 2024.08.09