[Django] C.R.U.D (1)

2021. 8. 19. 17:37코딩일지/Django

1. Models.py 작성

# AQuerytool을 참고하여 models.py 파일을 생성

AQueryTool

※ models.py

  • models.py 에 Model Class 작성을 통해 database 의 table 과 mapping
  • models.py 위치
├── manage.py
├── products
│   ├── **models.py : Model class 작성 --> database table과 mapping**
│   ├── urls.py
│   └── views.py
└── westarbucks
    └── urls.py
from django.db import models


class Owner(models.Model):
    name = models.CharField(max_length=45)
    email = models.CharField(max_length=300)
    age = models.IntegerField()

    class Meta:
        db_table = 'owners'

class Cat(models.Model):
    name = models.CharField(max_length=45)
    age = models.IntegerField()
    owner = models.ForeignKey('Owner', on_delete=models.CASCADE)

    class Meta:
        db_table = 'cats'

# 주인과 고양이라는 테이블을 만들었습니다.

 

models.py 작성 내용 DataBase에 적용

  • makemigrations : models.py에 작성한 python code를 database에 적용하기 위한 migration 파일(설계도)를 만드는 과정
python manage.py makemigrations app이름
  • migrate : makemigration으로 생성한 migration 파일(설계도)을 database에 적용
python manage.py migrate

 

실행하면 ok라고 뜨고 테이블이 만들어집니다.

 

2. Mysql 데이터 확인 (테이블 확인)

# 데이터베이스에 제대로 전달이 됬는지 테이블이 생성됬는지 확인합니다.

mysql -u root -p # mysql 접속

SHOW databases;  # database 확인

USE database_name;  # 사용할 데이터베이스 선택 
#use new

SHOW tables;  # table 확인

DESC table_name;  # 해당 table의 정보 확인
#DESC cats;
#DESE owners;

mysql 데이터 테이블 확인
DESC 테이블명으로 확인

 

  • 원하는 Table Date 확인하기
SELECT * FROM table이름;

#select * from owners;

 

 

3. Github에 올리기

아래의 글에서 git & github 검색하셔서 찾는 방법이 편합니다.

https://woojuscodingroom.tistory.com/13

 

  • 이미 branch에 연결되어 있기 때문에 branch는 생략하고 add, commit, push만 하시면됩니다

 

 C.R.U.D (2) 에서는  view.py 작성 및 httpie로 post, get 하는 방법에 대해서 알아보겠습니다.

 

 

 

'코딩일지 > Django' 카테고리의 다른 글

[Django] ManytoManyField  (0) 2021.08.26
[Django]C.R.U.D (3)  (0) 2021.08.26
[Django] C.R.U.D (2)  (0) 2021.08.21
[Django] Project Setting  (0) 2021.08.18
[Django] Tutorials  (0) 2021.08.14