-
모델 객체 --> 데이터베이스에 저장
어플리케이션 생성
$python manage.py startapp blog
$gedit setting.py
blog 추가
모델 생성
$gedit blog/models.py
from django.db import models from django.utils import timezone class Post(models.Model): author = models.ForeignKey('auth.User') title = models.CharField(max_length=200) #글자 수가 제한 된 텍스트 text = models.TextField() #글자 수에 제한이 없는 텍스트 created_date = models.DateTimeField( default=timezone.now) published_date = models.DateTimeField( blank=True, null=True) #말그대로 DateTime def publish(self): self.published_date = timezone.now() self.save() def __str__(self): return self.title
$python manage.py makemigrations blog
migration file을 데이터 베이스에 지금 반영할 수 있도록 준비
$python manage.py migrate blog
실제 데이터베이스에 모델 추가를 반영
관리자
$gedit blog/admin.py
Post객체를 모델로 등록하는 것
from .models import Post admin.site.register(Post)
$python manage.py runserver로 서버를 다시시작하고 127.0.0.1:8000/admin으로 접속
터미널 창을 새로 하나 열어서 source myvenv/bin/activate 로 다시 가상화를 실행시킨 다음에 아래 명령어로 superuser를 생성한다음 로그인 하면 아래와 같은 화면이 뜬다
$python manage.py createsuperuser
테스트로 글을 한개 써봤다.
놀랍게도 디비에 저장이 된다.
어메이징..
mysql> select * from blog_post;
+----+------------+-----------------------------------+---------------------+----------------+-----------+
| id | title | text | created_date | published_date | author_id |
+----+------------+-----------------------------------+---------------------+----------------+-----------+
| 1 | testeTitle | hello my name weeeeejwWwwwwwweeew | 2017-11-15 08:11:19 | NULL |
+----+------------+-----------------------------------+---------------------+----------------+-----------+
1 row in set (0.00 sec)'2017년 > Python' 카테고리의 다른 글
장고 view,url (0) 2017.11.15 python anywhere 사용하기 (0) 2017.11.15 파이썬 장고를 알아보자 (0) 2017.11.15 xml-rpc 다중 instance 등록방법 (0) 2017.09.16 파이썬 cmd 모듈 (0) 2017.09.15