Django 관리 인터페이스 활성화 및 연결 방법

Django 관리 인터페이스 활성화 및 연결 방법

2022-06-01 last update

15 minutes reading Ubuntu 20.04 Django Programming Project Python Development

소개


Django Development series을 따랐다면 Django 응용 프로그램을 시작하여 MySQL에 응용 프로그램을 연결했고 블로그 웹 응용 프로그램에서 PostsComments 데이터로 데이터베이스 모델을 만들었습니다.
이 강좌에서, 우리는 당신이 당신의 블로그 사이트를 관리할 수 있도록 Django admin site을 연결하고 사용할 것입니다.Django admin 사이트는 사용자와 다른 신뢰받는 개인이 사이트의 내용을 관리할 수 있도록 사용자 인터페이스를 미리 구축했습니다.
주의해야 할 것은 Django의 공식 문서에 따르면 이것은 조직 내부에서 사용하기에 매우 적합하지만 자동으로 생성된 Django 관리 인터페이스를 둘러싸고 웹 응용 프로그램을 구축하는 것을 권장하지 않는다고 한다.만약에 당신의 인터페이스가 절차를 더욱 중심으로 해야 하거나 데이터베이스 테이블과 필드의 세부 사항을 추상화해야 한다는 사실이 증명된다면 관리자를 위해 자신의 보기를 작성하는 것이 가장 좋습니다.

선결 조건


이 강좌는 Django Development series의 일부분으로 이 시리즈의 연장이다.
이 시리즈를 따르지 않으셨다면 다음과 같은 가정을 해 보겠습니다.
  • Django 버전 3 이상을 설치했습니다.
  • Django 응용 프로그램을 데이터베이스에 연결했습니다.저희는 MySQL을 사용하고 있습니다. 다음 Django 시리즈의 두 번째 부분인 "How To Create a Django App and Connect it to a Database"을 통해 이러한 연결을 실현할 수 있습니다
  • Unix 기반의 운영체제를 사용하고 있습니다. Ubuntu 20.04 클라우드 서버가 가장 좋습니다. 이것은 우리가 테스트한 시스템이기 때문입니다.비슷한 환경에서 Django를 설정하려면 저희 강좌'How To Install Django and Set Up a Development Environment on Ubuntu 20.04.
  • '을 참조하십시오.
    이 강좌는 주로 Django 관리 인터페이스를 다루기 때문에 설정이 다르더라도 계속 공부할 수 있습니다.

    1단계 - 관리자 활성화


    Python과 Django에서 작업을 시작할 때마다 Python 가상 환경을 활성화하고 응용 프로그램의 루트 디렉터리에 들어가야 합니다.시리즈에 따라 작업을 진행하려면 다음과 같은 내용을 입력하십시오.
    1. cd ~/my_blog_app
    2. . env/bin/activate
    Django 관리자를 사용하려면 응용 프로그램이 INSTALLED_APPS 파일의 settings.py 목록의 일부분인지 확인해야 합니다.
    설정 파일의 디렉토리로 이동하려면 다음과 같이 하십시오.
    1. cd ~/my_blog_app/blog/blog/
    여기서 settings.py 파일을 엽니다.만약 아직 없다면, 나노 등 텍스트 편집기를 사용하여 django.contrib.adminINSTALLED_APPS의 목록에 추가하십시오.
    1. nano settings.py
    파일의 INSTALLED_APPS 부분은 아래의 파일과 유사해야 합니다.목록의 응용 프로그램은 맨 위에 'blogsite',에 있지만 다른 이름의 응용 프로그램을 만든 경우 이 파일에 열거되어 있는지 확인하십시오.
    설치.회사 명
    ...
    # Application definition
    INSTALLED_APPS = [
        'blogsite',
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
    ]
    ...
    
    변경된 경우 파일을 저장하고 닫아야 합니다.나노에서 CTRLX을 입력한 다음 YENTER을 입력하여 이 작업을 완성할 수 있습니다.
    이제 나노나 다른 텍스트 편집기를 사용하여 urls.py 파일을 열 수 있습니다.
    1. nano urls.py
    위의 설명에서 파일은 다음과 유사해야 합니다.
    URL.회사 명
    """
    from django.contrib import admin
    from django.urls import path
    
    urlpatterns = [
        path('admin/', admin.site.urls),
    ]
    
    파일이 위와 다르다면 위의 줄을 복사하여 urls.py 파일에 붙여넣으십시오.
    현재, 우리는 Django 웹 프로젝트가 settings.pyurls.py 파일에 적당한 코드를 가지고 있음을 확보했습니다. 우리는 우리의 응용 프로그램이 관리 모델에 접근하고 사용자 인터페이스를 관리할 수 있다는 것을 알고 있습니다.

    2단계 - Admin이 설치된 응용 프로그램인지 확인


    다음에 우리는 모델을 데이터베이스로 옮겨서 새로 추가된 관리 모델을 얻을 수 있도록 해야 한다.manage.py 파일이 있는 디렉토리로 이동합니다.
    1. cd ~/my_blog_app/blog
    migrate을 변경할 때마다 models 명령을 실행하는 것을 기억하십시오. 아래와 같습니다.
    1. python manage.py migrate
    만약 우리가 상술한 파일에 대해 어떠한 변경도 하지 않았다면, migrate 명령을 실행할 때, 우리는 다음과 같은 내용의 출력을 받을 것이다.
    Output
    Operations to perform: Apply all migrations: admin, auth, blogsite, contenttypes, sessions Running migrations: No migrations to apply.
    그렇지 않으면 Django가 우리 프로그램을 지원하는 데 필요한 마이그레이션을 진행했음을 출력해야 합니다.
    이제 다음 명령을 실행하여 서버를 시작할 수 있습니다.0.0.0.0을 IP 주소로 대체할 수 있습니다.
    1. python manage.py runserver 0.0.0.0:8000
    그런 다음 선택한 브라우저에서 관리 패널의 URL로 이동합니다.서버의 IP 주소를 입력하십시오.
    http://your-server-ip:8000/admin/
    
    이와 유사한 로그인 화면이 표시됩니다.

    이 화면에 들어가면 관리 프로그램이 성공적으로 활성화되었음을 알 수 있습니다.
    이 응용 프로그램을 사용했지만 Django 관리 계정을 설정하지 않았을 수도 있습니다.다음 단계에서 로그인할 수 있도록 관리자 계정을 만들 수 있습니다.

    단계 3 - 관리자 수퍼유저 계정 만들기


    관리자 계정이 설정되어 있고 관리자 페이지에 로그인할 수 있는 경우 이 단계를 건너뛸 수 있습니다.
    서버에 새 터미널을 열거나 CTRLC을 누르면 Django 응용 프로그램을 사용하지 않습니다. 서버 터미널의 프로그래밍 환경에서 작업할 수 있습니다.
    Django를 사용하면 수퍼유저 계정을 생성할 수 있습니다. manage.py 파일을 실행하여 수퍼유저 생성 과정을 시작할 수 있습니다.
    1. python manage.py createsuperuser
    일단 우리가 이렇게 하면 사용자 이름, 전자메일, 비밀번호에 대한 상세한 정보를 입력하라고 알려줄 것이다.이 강좌에서는 사용자 이름 admin_user, 이메일 [email protected], 비밀번호 admin123을 사용하여 관리자 계정을 만들 것입니다.이 정보를 자신의 기본 설정으로 작성하고 기억할 보안 비밀번호를 사용해야 합니다.
    Output
    Username (leave blank to use 'root'): admin_user Email address: [email protected]
    그리고 Password: 프롬프트를 볼 때 비밀번호를 두 번 입력하십시오.암호를 입력하면 암호 버튼의 출력을 받을 수 없습니다.매번 알림 후 enter를 누르면 비밀번호를 확인합니다.
    Output
    Password: Password (again):
    현재 관리자 계정이 있습니다. 사용자 이름은 admin_user이고 비밀번호는 admin123입니다.
    관리 페이지에 존재하는 내용을 로그인하고 조사합시다.
    필요한 경우 python manage.py runserver 0.0.0.0:8000을 사용하여 Django 응용 프로그램을 다시 실행한 다음 URL http://your-server-ip:8000/admin/으로 다시 이동하여 관리자 로그인 페이지로 이동합니다.그리고 방금 만든 사용자 이름, 비밀번호, 비밀번호를 사용하여 로그인합니다.
    로그인에 성공하면 다음 페이지를 받을 수 있습니다.

    다음으로, 우리는 우리의 블로그 응용 프로그램을 관리 패널에 연결해야 한다.

    단계 4 - 게시물 및 의견에 대한 URL 모드 만들기


    이전 단계에서, 우리는 성공적으로 관리 인터페이스에 로그인했지만, 당신은 우리의 블로그 응용 프로그램이 아직 그곳에서 제공되지 않았다는 것을 이미 알아차렸을 것입니다.블로그 응용 프로그램을 사용하여 관리 인터페이스를 채우려면 관련 모델 PostComment을 추가하고 등록해야 합니다.
    이를 위해 urls.py 디렉터리에 blogsite이라는 빈 파일을 만들 것입니다. 아래와 같습니다.
    1. touch ~/my_blog_app/blog/blogsite/urls.py
    이 파일에서 우리는 관리 인터페이스를 통해 접근할 수 있도록 블로그 응용 프로그램에 URL 모드를 추가할 것입니다.
    방금 생성한 urls.py 파일의 위치로 이동합니다.
    1. cd ~/my_blog_app/blog/blogsite/
    그리고 나노로 파일을 엽니다.
    1. nano urls.py
    파일에 다음 코드 줄을 추가합니다.
    URL.회사 명
    from django.urls import path
    from . import views
    urlpatterns = [
        path('$/', views.posts, name='posts'),
        path('$/', views.comments, name='comments'),
    ]
    
    이것은 응용 프로그램이 viewsPosts에 접근할 수 있도록 하는 Comments에 필요한 URL 모드 표현식입니다.우리는 아직 views을 만들지 않았지만, 이 시리즈의 뒷부분에서 이 점을 소개할 것이다.

    단계 5 - 관리자에게 블로그 응용 프로그램 연결


    블로그를 관리 인터페이스에 연결하면 관리 대시보드에서 PostsComments의 링크를 볼 수 있습니다.현재 대시보드에는 GroupsUsers의 링크만 표시됩니다.
    둘을 연결하려면 Posts의 관리 파일에 Commentsblogsite 모델을 등록해야 합니다.blogsite 디렉토리로 이동:
    1. cd ~/my_blog_app/blog/blogsite
    그런 다음 선택한 텍스트 편집기에서 admin.py 파일을 엽니다.
    1. nano admin.py
    이 파일은 가져오기 문장과 주석을 채울 것입니다.
    관리회사 명
    from django.contrib import admin
    
    # Register your models here.
    
    응용 프로그램을 지원하기 위해 다음 코드를 포함하도록 이 파일을 편집해야 합니다.
    관리회사 명
    from django.contrib import admin
    from blogsite.models import Post
    from blogsite.models import Comment
    
    
    admin.site.register(Post)
    admin.site.register(Comment)
    
    파일에 만족하면 저장하고 종료합니다.
    현재 관리 패널에 PostComment 모델이 등록되어 있습니다.이렇게 하면 관리 인터페이스에서 모델을 선택하여 로그인하여 관리 대시보드를 보는 사용자에게 표시할 수 있습니다.

    단계 6 - 관리자에게 블로그 응용 프로그램이 추가되었는지 확인


    현재 관련 Python 코드가 추가되었습니다. 서버를 실행하십시오.http://your-server-ip:8000/admin을 열고 로그인하지 않은 경우 자격 증명을 사용하여 관리자에게 로그인합니다.이 강좌에서 우리는 사용자 이름 admin_user과 비밀번호 admin123을 사용하여 로그인합니다.
    현재 로그인하셨습니다. 아래의 웹 페이지는 귀하께 서비스를 제공할 것입니다.이전에 변경 사항이 없으면 브라우저를 새로 고쳐야 할 수도 있습니다.

    이것은 우리가 현재 응용 프로그램 blogsite을 Django 관리 대시보드에 연결했음을 검증했다.
    응용 프로그램을 테스트한 후 CTRL+C을 눌러 Django 서버를 정지할 수 있습니다.이것은 당신을 프로그래밍 환경으로 되돌려 줍니다.
    Python 환경을 벗어나려는 경우 deactivate 명령을 실행할 수 있습니다.
    1. deactivate
    프로그래밍 환경을 사용하지 않으면 터미널 명령 프롬프트로 돌아갑니다.

    결론


    이 강좌에서 관리자 인터페이스를 성공적으로 사용하고 관리자 로그인을 만들었으며 관리자에게 PostComment 모델을 등록했습니다.
    Django 관리 인터페이스는 블로그를 사용하여 댓글을 작성하고 모니터링하는 방식입니다.
    다음은 블로그 응용 프로그램에 views을 만들 것입니다.