2022. 11. 13. 14:55ㆍ스파르타코딩(22.8.29~22.12.31)/TIL(Today I Learned)
- Today I Learned
- 모델링을 알아보려고 하는데 컨셉을 웹페이지로 생각하니
각 모델의 연관성을 생각해보니 지을게 생각이 떠오르지 않았다.
공부하려고 하는 웹의 기획자체가 유저(User)가 돌아다니면서 게시판,댓글 팔로우 등
여러 모델의 흐름을 만들어주는 주체라고 생각되어
장고가 제공해주는 인증의 기능이 담긴 User 모델부터 알아보려고 했었다.
하지만 django.db.models.Model이 이해가 안되어 해당부분 먼저 알아보려고한다.
막무가내로 알아본 django.db.models.Model 더보기 ↓
하나씩 타고 들어가보았다.
![](https://blog.kakaocdn.net/dn/dQHs4n/btrQ4aRbpm1/UKxjtq1zos8okGrNeCrTp1/img.png)
![](https://blog.kakaocdn.net/dn/LHkGk/btrQ0GcLcgQ/xqK79nnear7AYZ4N3wi970/img.png)
![](https://blog.kakaocdn.net/dn/cPzzs9/btrQ2Rj5vmL/uAS3lE3aZg2PA9GHDlOJnk/img.png)
![](https://blog.kakaocdn.net/dn/brYZbz/btrQ5ksujKZ/pZmtK3YT2HGfcarBDnYeW0/img.png)
User는 AbstractUser를 상속받고
AbstractUser는 AbstractBaseUser 와 PermissionsMixin을 다중상속받고
그 끝에는 models.Model이 있었다.
대체 models.Model은 뭘까
알아보기 위해 직접 들어가서 확인해보았다.
![](https://blog.kakaocdn.net/dn/bjQCtD/btrQ5l50GrL/MfVVdthDaZT5f0f7ha9lNk/img.png)
DB에서 모델의 테이블을 구성하는 속성을 만드는 클래스들과
![](https://blog.kakaocdn.net/dn/chXPCx/btrQZX7nX3G/kRL35kAFPkwW95JBwrS3Rk/img.png)
![](https://blog.kakaocdn.net/dn/b2ApUH/btrQ4bv6nJR/xzbvK8u6A9ztSOVZYhzPs1/img.png)
![](https://blog.kakaocdn.net/dn/S1VMA/btrQ0HbULM8/HRbs2e9EieuhYabkS2MhfK/img.png)
![](https://blog.kakaocdn.net/dn/ckicTs/btrQ2d8XsFF/gTkGafCKYmVitKCj4k8MCk/img.png)
그 모델의 관계를 연관시켜주는 기능의 클래스들
![](https://blog.kakaocdn.net/dn/bkJ6XP/btrQ2eUnOqh/uKfSq2ffSMJ4OqyQcU6i7K/img.png)
![](https://blog.kakaocdn.net/dn/bFqkxq/btrQ0kBgjyw/nqJqyCHbL8YYYTk23Kgc7K/img.png)
![](https://blog.kakaocdn.net/dn/bejaE0/btrQ4XxEDFp/iv1o9DgNUOYrzi5JEM7i9K/img.png)
DB에 접근 권한을 확인 해주는 클래스 등
![](https://blog.kakaocdn.net/dn/bRSH09/btrQ3TWzDjF/3qgkKjYY2S0zNuv8qrP2tK/img.png)
DB를 생성할때 필요한 속성 , 관계 접근권한 등
모델의 ORM(Object Relational Mapping(객체-관계-매핑))을 하기위한
클래스와 함수들이 다수 포함되어 있었다.
내가 장고보다 더한걸 개발하지 않는이상은..
더이상의 확인은 무의미 하다고 판단되었다.
결국은 django.db로부터 import 하고 models
DB모델 클래스를 구성하기 위해 models.model을 상속받는 것은
DB를 생성하고 ORM의 각종 기능들을 구성하는 하나의 Class 였던것이었다.
MDN Web Docs사이트에서 (KKH튜터님 추천)
(CSS, HTML, JavaScript 등 웹 기술과 웹의 기반 소프트웨어를 배울 수 있는, 계속해서 발전하는 학습 플랫폼)
models에 관련된 자료를 찾았다...
장고가 더러운 작업을 대신 해준덴다.. 고맙다 이자식아..
삽질을 오지게 했다. 하지만 모델링할때 작동 방식에 대해 알게 되었고,
모델에 대해서 어느정도 머리속에 그려지는것 같다.
결론 : 모델링은 효율적으로 적절한 필드를 사용하여 모델을 설계 및 생성하는 것이다.
django.db.models.Model은
DB를 생성하고 ORM의 각종 기능들을 구성하는 하나의 Class
'스파르타코딩(22.8.29~22.12.31) > TIL(Today I Learned)' 카테고리의 다른 글
[TIL] Model Types형 Field와 속성에 대해 22/11/14 11일차 (0) | 2022.11.16 |
---|---|
[TIL] Django (User)모델과 Project Start Tutorial 11/11 10일차 (0) | 2022.11.14 |
[TIL] ORM과 객체,Class,instance에 대해 11/9 8일차 (0) | 2022.11.13 |
[TIL] 강력한 기능 파이썬의 상속(Inheritance)에 대해 복습 11/8 7일차 (1) | 2022.11.11 |
[TIL] API,VIEW / DRF의 api_view , APIVIEW 11/07 6일차 (0) | 2022.11.10 |