(4-4) Django (2)

Yongjoo Lee·2020년 12월 24일
0
post-thumbnail

Django

데이터베이스

  • 단순히 데이터를 저장하는 창고의 개념이 아닌,
    데이터를 사용하기 쉽게 정렬해두어서 유저가 정보를 참조하고 싶을때
    쉽게 바로 사용할 수 있게 해주는 시스템
  • 대표적으로 RDB(관계형 데이터베이스)가 있음
  • SQL을 사용하여 데이터베이스 관리

장고에서는 SQL을 사용하지 않고 데이터베이스와 상호작용할 수 있는 기법이 존재

👇

ORM

객체 관계 매핑 (Object-relational mapping; ORM)은 데이터베이스와 객체 지향 프로그래밍 언어 간의 호환되지 않는 데이터를 변환하는 프로그래밍 기법

👉 장고에는 ORM이 내장되어 있음

Model

  • models.py

    • class <class_name>(models.Model):

      from django.db import models
      
      class Coffee(models.Model):
          # Field 1
      		# Field 2
          # ...
    • 클래스명은 데이터베이스 테이블명이다.

    • 각 필드(속성)는 데이터베이스 테이블의 컬럼이다.

**models의 필드 타입**

  • 문자열 : CharField
  • 숫자 : IntegerField, SmallIntegerField, ...
  • 논리형 : BooleanField
  • 시간/날짜 : DataTimeField
  • ...

👉 각 필드에 옵션을 인자로 주어 기본사항이나 제약사항을 추가할 수 있음

  • models.py

    from django.db import models
    
    class Coffee(models.Model):
        name = models.CharField(default="", max_length=30)
        price = models.IntegerField(default=0)
        is_ice = models.BooleanField(default=False)

Admin 페이지에서 Model 관리하기

Template 상에서 Model 보여주기

Template 상에서 Model 내용 변경하기 - Form 이용

이제 해당 정보를 받아서 DB에 저장하는 코드 작성!

profile
하나씩 정리하는 개발공부로그입니다.

0개의 댓글