Programming Language/Django

Django 01) 첫걸음

Sergemeow 2023. 4. 11. 13:49

@ terminal,

pip install django==3.2.18

django-admin startproject first_pjt

cd first_pjt

python manage.py runserver

ctrl + c 누르면 서버 종료


가상환경 세팅

프로잭트 폴더 안에 가상환경을 만들고 세팅하는 것이 좋음

프로잭트별 패키지를 독립적으로 관리하기 위한 것

  • 가상환경 생성
  • python -m venv nameHere
  • 가상환경 적용(맥에서는) source venv/bin/activate
  • (venv)라는 것이 뜨면 가상환경 적용된 것
  • source ./venv/Scripts/activate
  • 비활성화
  • deactivate
  • 가상환경 패키지 목록을 텍스트 파일로 저장
  • pip freeze > requirements.txt
  • 해당 텍스트 파일로부터 패키지를 설치
  • pip install -r requirements.txt

  • asgi.py
    • asynchronous server gateway interface
    • django 애플리케이션이 비동기식 웹서버와 연결 및 소통하는 것을 도움
    • 추후 배포 시에 사용하며 지금은 수정하지 않음
  • settings.py
    • django 프로잭트 설정을 관리
  • urls.py
    • 사이트의 url과 적절한 views의 연결을 지정
  • wsgi.py
    • web server gateway interface
  • manage.py
    • 장고 프로잭트와 다양한 방법으로 상호작용하는 커맨드라인 유틸리티

앱 생성

앱(application) 하나의 큰 기능 단위

정해진 규칙은 없으며 개발자가 판단하여 앱 생성

여러 개의 앱이 아닌 단일 앱으로 개발해도 괜찮음

python manage.py startapp articles

  • admin.py
    • 관리자 페이지 설정
  • apps.py
    • 앱의 정보가 작성되는 곳
    • 별도의 추가 코드를 작성하지 않음
  • models.py
    • 애플리케이션에서 사용하는 model을 정의하는 곳
    • MTV 패턴의 M에 해당(model, view, template)
  • tests.py
    • 프로잭트의 테스트 코드를 작성하는 곳
  • views.py
    • view 함수들이 저장됨

앱을 사용하기 위해서는 반드시 INSTALLED_APPS 리스트에 반드시 추가해야함


요청과 응답

urls.py에서..

articles - views에서..

  • HttpResponse 내에 내용 추가를 용이하게 하기 위해 Templates를 사용
  • 템플릿 폴더 이름은 반드시 templates라고 지정.
  • 경로: app_name/templates/app_name

Done.


Template에 데이터를 넘겨줄 때는 dictionary 형태로 전달

  • context라는 dictionary를 정의하고 render 내에 context 추가.
  • html 파일에서 {{’key’}}로 넣으면 됨

'Programming Language > Django' 카테고리의 다른 글

Django 06) CRUD_2  (0) 2023.04.11
Django 05) CRUD_1  (0) 2023.04.11
Django 04) SQLite 기초  (0) 2023.04.11
Django 03) Form & Data  (0) 2023.04.11
Django 02) MTV 구조  (0) 2023.04.11