[ Django ] Django DB 에 관하여

2021. 11. 16. 00:32·Archive/Develop
728x90
반응형

 

많이 해봤더라도, 아직 미숙하기에 한번 더 리마인드 해야할 것 같다.

 

Django Model

장고 내장 ORM

 

 데이터베이스 테이블과 파이썬 클래스를 1:1로 매핑.

 

모델 클래스 명은 단수형으로 지정한다.

클래스기때문에 첫글자가 대문자인 PascalCase 네이밍 규칙을 따라야한다.

 

매핑되는 모델 클래스는 DB 테이블 필드 내역이 일치해야한다.

 

 

모델을 만들기 전에 서비스에 맞는 DB 설계과정이 들어가야한다.

 

 

모델을 개발할때는 아래의 순서를 따르면 된다.

 

 

1. 모델 클래스 작성

2. 마이그레이션 파일 생성.

3. 마이그레이트

4. 모델활용

 

 

만약 이미 DB 가 구축되어 있다면, inspectdb 명령어를 이용하여

데이터베이스로부터 모델 클래스 소스를 생성할 수도 있다.

 

DB 테이블명은 "앱이름_모델명" 으로 지어진다. ( Meta로 따로 지정 해주지 않을 시)

 

 

 

공부를 하면서 새롭게 알게 된 건데,

 

만약 내가 아래 명령어로 새롭게 instagram 앱을 migrate 했다고 해보자.

 

 

python manage.py migrate instagram

 

 

이 상태에서 아래 명령어를 이용하면,

실제 어떤 쿼리가 실행되었는지 알 수 있다.

 

 

python manage.py sqlmigrate instagram 0001_initial

 

 

 

나는 SQL 을 먼저 배우고 django를 접해서 그런가

사실 orm을 이용하는 것보다는 쿼리가 훨씬 직관적으로 다가오는 경향이 있다.

 

가끔 오류를 체크할 때 쓰기 좋을 것 같다.

 

 

 

아주 좋다... 너무 좋아ㅏ... 속시원하다...

 

 

 

sqlite 가 설치가 되어 있다면,

dbshell 을 이용해서 보는 것도 한가지의 방법이다.

 

python manage.py dbshell

.tables

 

 

테이블명도 확인 가능하다.

 

 

 

 

728x90
반응형

'Archive > Develop' 카테고리의 다른 글

[ Django ] DateTimeField | auto_now_add VS auto_now  (0) 2021.11.16
[ Django ] Django Model Field  (0) 2021.11.16
[ Django ] 블로그 기능 만들기 | blog app 만들기(기본 CRUD)  (0) 2021.11.16
개발 방법론 | SPA(Single Page Application)  (0) 2021.11.15
[ Django ] Django REST Framework 000  (0) 2021.11.15
'Archive/Develop' 카테고리의 다른 글
  • [ Django ] DateTimeField | auto_now_add VS auto_now
  • [ Django ] Django Model Field
  • [ Django ] 블로그 기능 만들기 | blog app 만들기(기본 CRUD)
  • 개발 방법론 | SPA(Single Page Application)
코뮤(commu)
코뮤(commu)
코딩으로 커뮤니케이션하는 코뮤입니다 😎
  • 코뮤(commu)
    코뮤(COMMU)
    코뮤(commu)
  • 전체
    오늘
    어제
    • 분류 전체보기
      • Archive
        • Hacking
        • Develop
        • ETC
      • Algorithm
      • DB&Infra
      • ETC
      • Node
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

    • IT지식보따리
    • IT가 맛있다
    • IT 천재
  • 공지사항

    • 배고픕니다
  • 인기 글

  • 태그

    oracle db
    백준 파이썬
    파이썬 기초
    Python
    파이썬 백준
    파이썬 문제
    코드업
    백준 풀이
    파이썬 기초 문제
    비박스
    자바스크립트 객체
    카카오 100일 프로젝트
    docker
    장고
    보안뉴스
    파이썬
    오라클
    javascript
    Git
    백준
    백준 문제풀이
    코드업 기초
    자바스크립트 API
    Codeup
    Django
    C++
    자바스크립트
    Oracle
    코드업 파이썬 기초 100제
    파이썬 알고리즘
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.1
코뮤(commu)
[ Django ] Django DB 에 관하여
상단으로

티스토리툴바