본문 바로가기

Python/Django19

Django 로그인 기능(Session) Django로 로그인 기능을 구현하는 방법 중 Session을 활용한 간단한 방법이다. user/views.py : 세션에 로그인정보 저장 # user/views.py def sign_in_view(request): # 조건문을 통해 POST방식으로 데이터를 보냈는지 확인 if request.method == 'POST': username = request.POST.get('username', None) password = request.POST.get('password', None) # 받아온 데이터를 db에서 불러오기 me = UserModel.objects.get(username=username) # 사용자 불러오기 if me.password == password: # 저장된 사용자의 패스워드와 입.. 2022. 5. 31.
HTTP method == 'GET' , 'POST' 1. GET : 데이터를 읽거나 검색할 때 사용 URL에 변수(데이터)를 포함시켜 요청한다. 데이터를 Header(헤더)에 포함하여 전송한다. URL에 데이터가 노출되어 보안에 취약하다. 전송하는 길이에 제한이 있다. 캐싱(Caching, 한번 접근 후 또 요청할 시에 빠르게 접근하기위해 레지스터에 데이터를 저장시켜 놓는 것)할 수 있다. 2. POST : 새로운 데이터를 생성하거나 수정, 삭제를 요청할 때 사용 URL에 변수(데이터)를 노출하지않고 요청한다. 데이터를 Body에 포함시킨다. URL에 데이터가 노출되지 않아서 기본 보안이 되어있다. 전송하는 길이에 제한이 없다. 캐싱할 수 없다. 3. 예시 from django.shortcuts import render, redirect from .mod.. 2022. 5. 31.
Django 분리된 파일을 이어보자. 각 경로별로 있는 파일들을 연결시켜보자. 프로젝트의 부모 urls.py 와 각 자식(앱 내) urls.py를 연결한다. 1. urls.py 수정 : 요청받은 url로 이동하기 위해 mySpartaSns의 urls.py를 수정한다. # mySpartaSns/urls.py from django.contrib import admin from django.urls import path, include urlpatterns = [ path('admin/', admin.site.urls), # include 를 사용하여 user의 urls.py의 모든 url을 연결한다. path('', include('user.urls')) ] 2. user의 views.py 수정 # render 를 사용하여 html을 그려준다... 2022. 5. 30.
Django의 템플릿 문법(html) Templates 폴더 안에 html 파일을 생성하고 Django의 템플릿 문법을 알아보자. 1. 템플릿 만들기(html) 1-1. templates/base.html # 생략 - 상단 nav바 내용 {% block content %} {% endblock %} 1-2. templates/user/signup.html {% extends 'base.html' %} {% block title %} 회원가입 {% endblock %} {% block content %} 회원가입 이름 # 생략 {% endblock %} 2. 템플릿 문법 : html에서 Python 언어를 사용할 수 있게 하여 작업을 수월하게 도와주는 언어 2-1. 상속 상속하는 부모 html 에서 {% block title %} {% end.. 2022. 5. 30.