_won_
wonprogrammer
_won_
전체 방문자
오늘
어제
  • 분류 전체보기
    • woncoding
      • TIL
      • WIL
    • source Code
      • Python
      • Programmers
      • BAEKJOON

블로그 메뉴

  • 방명록

티스토리

Github · Wonprogrammer
hELLO · Designed By 정상우.
_won_

wonprogrammer

woncoding/TIL

TIL | 9.27.화 [Python 장고 / Django 기초🐢]

2022. 9. 27. 22:08

- Python Django 실무 기초

 

  • 데이터 베이스 관계
    • one-to-many
    • one-to-one
    • many-to-many
  • Django shell
  • many-to-many 모델등록 및 사용

 


 

 

- Python Django 기초 🐢 |  VSCode 기준

 

 

1. App / models.py

 

[Model Intro]

  • 모델이 필요한 이유
  • 클래스와 인스턴스를 이용한 정보 저장
  • db의 필요성 : 데이터 모델링 / 무결성 / 많은 사용자를 위한 동시성 제어  등

 

 

 

[app / models.py]

models.py에서는?  데이터의 key값, 형식, 정보가 갖는 다양한 정보들을 미리 정의해 두는 곳

(sql을 위한 '스키마 정의 + 쿼리 정의' 의 집합체 / db를 쉽게 관리 할 수 있게 해줌)

 

  • In Terminal → python manage.py makemigrations
    • app / models.py 에서 만든 필드들을 sql구문으로 만들어 준다
  • In Terminal → python manage.py migrate
    • 만든 sql구문을 실제로 실행 시켜주는 명령어

👉 이렇게 데이터 베이스 만들고 적용 완료

 

⚠️맥북 M2는 이 과정에서 tk 오류가 생길 수 있으므로 꼭 brew install python-tk 해줘야 한다.⚠️

 

 

 

 

 

[makemigrations]

만들어진 migrations sql 확인하기 = python manage.py sqlmigrate 앱이름 앱 안 migrations-pycache-initial앞 숫자

( 예) python manage.py sqlmigratearticles 0001 )

 

 

 


 

 

 

2. Django models의 field

 

[app / models.py 에 작성되는 field]

 

Model field reference | Django 문서 | Django

Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate

docs.djangoproject.com

👉 모든 필드들을 볼 수 있다.

 

  • 대표적인 필드 종류
    • CharField()  :  짧은 문자열로 TextField 보다 메모리를 아낄 수 있다.
    • TextField()
    • DateTimeField()

 

 


 

 

 

 

3. admin

관리자 계정 : 사용자들의 데이터 베이스 등을 관리 할 수 있다.

 

[관리자 계정 생성]

In Terminal → python manage.py createsuperuser

 

[app / admin.py]

  • admin 계정 사용을 위한 등록
    • app / admin.py 에서 from .models import models.py에 만들어 놓은 class명 을 임포트 한다 → models.py 에 정의된 필드에 관해서 모두 관리 할 수 있음
    • 이후 app / admin.py 에 admin.site.register(임포트 한 class명) 을 적어주면 완료 → createsuperuser 계정으로 직접 관리 할 수 있다

 

 

 

 


 

 

 

 

 

+ 참고 자료

 

[SQl]

 

A06 변경사항 저장과 취소

## 변경사항 저장하기 **File** → **Write Changes** 메뉴를 선택하거나 **DB Toolbar**의 **Write Changes** 버튼을 ...

wikidocs.net

 

[장고 모델]

 

모델 | Django 문서 | Django

Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate

docs.djangoproject.com

 

 

'woncoding > TIL' 카테고리의 다른 글

TIL | 9.29.목 [Django 기초🐢]  (0) 2022.09.30
TIL | 9.28.수 [Python 장고 / Django 기초🐢]  (0) 2022.09.28
TIL | 9.26.월 [Python 장고 / Django 기초🐢]  (0) 2022.09.26
TIL | 9.23.금 [Python 장고 / Django 기초🐢]  (0) 2022.09.23
TIL | 9.22.목 [Python 장고]  (0) 2022.09.22
    'woncoding/TIL' 카테고리의 다른 글
    • TIL | 9.29.목 [Django 기초🐢]
    • TIL | 9.28.수 [Python 장고 / Django 기초🐢]
    • TIL | 9.26.월 [Python 장고 / Django 기초🐢]
    • TIL | 9.23.금 [Python 장고 / Django 기초🐢]
    _won_
    _won_
    Coding Practice blog

    티스토리툴바