• 장고 모델 ,관리자

    2017. 11. 15. 17:13

    by. 위지원

    모델 객체 --> 데이터베이스에 저장


    어플리케이션 생성


    $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