본문 바로가기

Django Basics

[패스트캠퍼스 수강 후기] 파이썬 인강 자기계발 챌린지 29 회차 미션

패스트캠퍼스 파이썬 웹개발 올인원 패키지 후기(29)

파이썬 웹개발 올인원 패키지 29 일차 후기 겸 학습기록 입니다.

 

오늘은 파이썬 웹 프레임워크 Django 세번째 시간입니다.

지난 시간에 이어 장고의 모델 클래스에서 어떻게 데이터베이스를 관리하는지 알아볼것입니다.

그리고 Django의 가장편리한 기능 중 하나인 Admin 페이지에 대해 간단하게 배워 보았는데요.

자세한내용을 확인해보시죠.

 

 

데이터베이스 관리

python manage.py makemigrations 명령어

django model 클래스에 등록되어 있는 model을 sql문으로 생성

 

python manage.py migrate 명령어

settings.app에 등록되어 있는 app들의 테이블 생성

기본적으로 sqlite로 연동

settings.py에 DATABASES 부분에서 기본 세팅이 sqlite로 되어 있기 때문이다.

 

각테이블에는 id 라는 필드가 자동으로 생성 된다.(primary key)

 

만약, 모델 클래스의 필드를 수정하고

makemigrations, migrate를 하면, 변경사항을 지속해서 기록한다.

각 app폴더의 migrations 폴더에서 확인 할 수 있다.

 

Django의 admin 소개

Django Admin

urls.py

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('admin/', admin.site.urls),
]

admin url은 기본적으로 djangoproject의 urls.py에 등록되어 있다.

 

python manage.py createsuperuser 명령어

django 관리자 아이디 생성 

python manage.py runserver 명령어

Django 테스트 서버 구동

 

http://127.0.0.1:8000/admin

브라우저로 접속 후 createsuperuser로 생성한 id(관리자)로 로그인

 

현재 데이터베이스 테이블 확인 할 수 있음.

 

 

Admin 활용

만든 모델을 Admin페이지에 등록해보기

admin.py

from django.contrib import admin
from .models import Fcuser


class FcuserAdmin(admin.ModelAdmin):
    list_display = ('username', 'password')

admin.site.register(Fcuser, FcuserAdmin)

 

models.py

from django.db import models

# Create your models here.

class Fcuser(models.Model):
    username = models.CharField(max_length=64, verbose_name="사용자명")
    password = models.CharField(max_length=64, verbose_name="비밀번호")
    registered_dttm = models.DateTimeField(auto_now_add=True, verbose_name="등록시간")

    def __str__(self):
        return self.username

    class Meta:
        db_table = 'fastcampus_fcuser'
        verbose_name = '패스트캠퍼스 사용자'
        verbose_name_plural = '패스트캠퍼스 사용자'

 

 

 

 

패스트캠퍼스 파이썬 인강 자세한 내용은 아래 링크를 참고해 주세요!

 

https://bit.ly/2WG0IXN