728x90

참고:

[Web Applicateion]서버 사이드와 클라이언트 사이드,백앤드와 프론트앤드


pip install django로 반드시 장고를 설치하여야한다.

또한 장고의 버전은 2이므로 1을 사용하는 사람들의 경우 서로 많이 차이날 수 있다는 점을 잘 알고 접근하여야 한다.


웹을 만들면서 반드시 필요한건 db를 사용하는 것이다.

db를 사용하지 않고도 웹을 만들순 있을 것이다.

다만 기능이 굉장히 굉장히 제한될 뿐이다.

보통 db에서 만드는 하나하나의 릴레이션을 모델이라고 부른다.

완전히 동의어라고 하긴 힘들지만 비슷하게 생각해도 큰 무리는 없다.

django에서 역시 이러한 릴레이션을 model이라는 명칭으로 부른다.

이제 djnago에서 model을 사용해 볼 것이다.


# models.py
from django.db import models


# Create your models here.
class Person(models.Model):
name = models.CharField(max_length=20)
birth = models.DateTimeField('date published')
age = models.IntegerField()

우리는 Person이라는 모델을 하나 만들것이다.

이는 클래스로 만드는데 Model이라는 클래스를 상속받도록 한다.

위와 같이 만들고나서 아래의 작업을 하자.



python3 manage.py migrate


마이그레이션을 하지 않았다면 마이그레이션을 시행하여주자.

여러분이 이미 모델로 정해놓은 db의 정보를 테이블화 시켜줄 것이다.

만약 이미 마이그레이션을 해놨더라도 시행은 된다. 단 만들지 않을 뿐.



마이그레이션이 실행되면 자동적으로 db가 생성된다.

보면 화면에 우리가 아무설정 하지 않았던 sqlite3로 자동으로 생성된것을 알 수 있다.

마이그레이션으로 끝이 아니다.

이제 마이그레이션을 하고나서 변동사항이 있을 때 마다 makemigrations를 해줘야한다.

이는 db에 변동사항을 반영하여 쿼리문을 날리게 된다.

시행방법은 아래와 동일하다.



python3 manage.py makemigrations <어플리케이션명>


이를 사용하면 mirations라는 폴더를 (파이썬 패키지)를 만들게된다.

이미 있다면 새로 만들지는 않고 추가로 작성하게 된다.

아래를 보자



보다시피 새로운 폴더내에 마이그레이션에 사용에 어떠한 로직을 사용했는지 간략하게 볼 수 있다.

다만 이는 쟝고식이며 만약에 각각의 sql에 대응되는 명령어가 머였는지 궁금하다면 아래의 명령어로 확인해 볼 수 있다.



python3 manage.py sqlmirate dj <마이그레이션 번호>


이제 우리가 읽을 수 있는 각각의 쿼리로 나온다.

그러면 간단하게 데이터를 넣어보자.

파이썬 쉘을 시행하되 manage.py shell로 시행하자.



python3 manage.py shell


해당 쉘을 시행하는데는 그만한 이유가 있다.

시행해봤자 일반 파이썬쉘과 똑같지만 환경변수가 더 설정되어 있다.

아래와 같이 실행해보자.


>>> from dj.models import Person

>>> person = Person(name="kukaro",birth="1993-01-01",age=26)

>>> person.save()

/usr/local/lib/python3.6/site-packages/django/db/models/fields/__init__.py:1423: RuntimeWarning: DateTimeField Person.birth received a naive datetime (1993-01-01 00:00:00) while time zone support is active.

  RuntimeWarning)

>>> person.id

1


굵은 글씨만 실행하면된다.

일단 여러분이 사용한 모델을 import시켜주고 그 모델로 객체를 만든다.

여기서 여러분이 지정한 필드에 값을 직접넣어준다.

save메소드를 사용해서 데이터를 저장한다.

그다음 id를 확인해보면 데이터가 저장되었음을 확인할 수 있다.

정말로 데이터가 저장되있는지 확인해보자.


django admin을 들어가면 밑에 DJ라는 섹션이 존재하는데 이는 여러분이 만든 어플리케이션을 의미한다.

그 안에 여러분은 Persons라는 모델을 만들었다.

이를 클릭하여 들어가 보자.



그러면 Person object가 한개 존재함을 확인할 수 있다.

이것을 눌러보자.



여러분이 기입한 데이터가 기제되어 있는 것을 확인할 수 있다.



여러분이 새로 데이터를 만드는것 역시 가능하다.



이 역시 저장이 된다.



또한 수정하는것 역시 가능하다.

+ Recent posts