사용자 관리와 로그인 - 화면 띄우기

장현웅·2023년 9월 1일
0

목차

  1. 회원가입 & 로그인 페이지 화면에 띄우기
  2. 회원가입 기능 만들기
  3. 로그인 기능 만들기

1. 회원가입 & 로그인 페이지 화면에 띄우기


순서
1. 사용자가 브라우저에 url 요청
2. 프로젝트 settings.py가 있는 처음 작성한 앱의 urls.py에서 요청을 받음.
3. 처음 작성한 앱의 urls.py가 각 앱의 urls.py에 연결된 url을 확인
4. 맞는 url이 등록된 앱과 연결된 view 함수를 찾음.
5. 등록된 url에 연결된 view함수가 해당 html 파일을 가져옴.
6. 사용자 화면에 전달

1) 화면에 보여줄 html 파일 생성

  • 프로젝트에 Templates 폴더 생성
    'base.html'(모든 화면에 기초가 되는 화면) 생성
    User에 관련된 기능을 하는 'signin.html' & 'signup.html' 파일을 User폴더에 따로 생성

2) 사용자로부터 URL 요청을 받은 Main App의 urls.py가 요청 받은 url이 연결된 앱의 url을 찾을 수 있도록 Main App urls.py에 앱 url 연결 코드 작성 (Main App urls.py - The App urls.py 연결)

  • mySpartaSns/urls.py
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('user.urls'))	# user앱의 urls.py에 연결
]

3) HTML을 불러오는 view함수를 해당 앱의 urls.py와 연결하기 위해 해당 앱의 views.py 작성 (Templates[html] - APP View 연결)

  • user/views.py
from django.shortcuts import render


# Create your views here.
def sign_up_view(request):
    return render(request, 'user/signup.html')


def sign_in_view(request):
    return render(request, 'user/signin.html')

4) 해당 앱의 View 함수들을 URL과 연결시키기 위해 해당 앱의 urls.py에 코드 작성 (APP View - APP URL 연결)

  • user/urls.py
from django.urls import path
from . import views

urlpatterns = [
    path('sign-up/', views.sign_up_view, name='sign-up'),
    path('sign-in/', views.sign_in_view, name='sign-in'),
]

서버 작동

  • [sign up 페이지]
http://127.0.0.1:8000/sign-up

  • [sign in 페이지]
http://127.0.0.1:8000/sign-in

0개의 댓글