Framework/Django

장고 ADMIN, 웹 발행 과정

JM Lee 2023. 4. 3. 22:40
728x90

ADMIN : 데이터를 넣고, 지우고, 수정할 수 있는 기능이 있음

주소에 /admin을 입력하고 엔터하면 아래 사진이 나온다.

이제 뭔지 알겠으니 다음 작업을 한다.

python manage.py createsuperuser

터미널에 다음 작업을 하면 새 계정을 생성할 수 있다.

유저 네임, 이메일, 비번을 등록할 수 있고 그럼 등록이 완료된다.

그래서 그거대로 내 로컬호스트에서 로그인을 하면

admin 계정 로그인 후

요렇게 나온다..!

여기까지 과정을 알아보았다.


데이터에 입력한 부분을 실현하는 것

이제 전 시간에 우리가 데이터베이스에 옮긴 model.py의 클래스부분을 이 화면에 도입할 것이다.

그러려면 admin.py에서 작업해야 한다.

from django.contrib import admin
from .models import UserModel # 우리의 위치와 동일한 model.py의 파일 중 usermodel을 가져오겠다.

# Register your models here.
admin.site.register(UserModel)
# 이 코드가 나의 UserModel을 Admin에 추가 해 줍니다

admin.py에 다음의 코드를 입력한다.

그러면 이렇게 아래 user models가 생성되고, 

add 기능을 쓸 시 class 안에 있는 5개 중 수동으로 작성하는 3개의 창이 올라옴을 알 수 있다.


TWEET 앱 설정

이번에는 글을 만들 것이기 때문에 TWEET 앱으로 들어갔다.

# tweet/models.py
from django.db import models
from user.models import UserModel


# Create your models here.
class TweetModel(models.Model):
    class Meta:
        db_table = "tweet"

    author = models.ForeignKey(UserModel, on_delete=models.CASCADE)
    content = models.CharField(max_length=256)
    created_at = models.DateTimeField(auto_now_add=True)
    updated_at = models.DateTimeField(auto_now=True)

USER 앱과 마찬가지로, TWEET 앱에도 model.py부터 손을 댔는데,

이번엔 class에 author, content, created_at, updated_at 을 썼다.

 

그리고.. 다음은?

다행히 방법은 외워놓았다.

python manage.py makemigrations 
python manage.py migrate

이 두 코드는 꼭 외워놔야겠다. 데이터베이스로 옮기는 방법 !

from django.contrib import admin
from .models import TweetModel #동 파일 경로의 models.py에서 tweetmodel을 가져온다.

# Register your models here.
admin.site.register(TweetModel)

그리고 admin.py에 접속해서 다음 코드를 작성하면, 이것이 페이지로 이동하게 된다.

tweet에 입력된 것을 확인했으니! 복습은 충분히 된 것 같다.


추가적으로, 장고를 이해하려면 이 파이썬 간의 내용 관계가 어떻게 이어지는지 좀 더 알아볼 필요가 있어보인다.
관계를 이해하지 못하면 강의를 수동적으로 듣는 것에 그치게 되는 것 같으니
내일은 좀 더 이해할 필요가 있어보인다.