Django DB

UICHEOL_HWANG·2023년 8월 8일

django

목록 보기
1/4

아직 필자도 이해도가 적은 django 복습 기록용으로 남기는 글이다.

회원가입 form 만들기

from django import forms

class Sale_form(forms.Form):
    first_name = forms.CharField()
    last_name = forms.CharField()
    age = forms.IntegerField(min_value=0)

이렇게 만들어준 폼을

from django.http.response import HttpResponse
from django.shortcuts import render,redirect
from django.http import HttpRequest
from .models import Id,Person,Sale
from .forms import Sale_form ## 요부분 

def 세일입력(request):
    # print(request.POST) 입력한 폼이 정상적으로 보내는지 확인용
    form = Sale_form()
    if request.method == "POST":
        print("포스트 메소드로 왔네요")
        form = Sale_form(request.POST)
        # 이게 유효한지 아닌지를 확인 해준다.
        #메소드 유효성이 제대로 들어갔는지 안 갔는지 확인 하는 것
        if form.is_valid():
            print("클린데이터 확인>> ")
            print(form.cleaned_data)
            first_name = form.cleaned_data['first_name']
            last_name = form.cleaned_data['last_name']
            age = form.cleaned_data['age']
            person = Person.objects.first()

            Sale.objects.create(
                first_name = first_name,
                last_name = last_name,
                age = age,
                person = person
            )

            print("세일이 입력되었습니다!")
            return redirect("/홈페이지") 
            #입력 이후 홈페이지로 다시 돌아가게 해주는 옵션
        
    context = {
        "폼키" : form
    }
    return render(request,"세일입력.html",context)

폼키 양식에 맞는 db들을 설계해준다

그리고 나서 폼 양식에서 가져오게된 정보들을
html로 뿌려주게 되는데

<!DOCTYPE html>
<html lang="ko">
<head>
    <meta charset="UTF-8">
    <title>세일상세</title>
</head>
<body>
    <ul>
      <p>세일을 입력해주세요</p>
       <form method="post">
          {% csrf_token %}
	<!-- 이게 무엇이냐 정보를 보호해주는 토크나이저->
        <p>
            {{ 폼키.as_p }}
        </p>
        <button>전송</button>
       </form>
    </ul>
</body>
</html>

csrf-token은 아직까지는 100% 이해하지 못했지만 개인정보 토크나이즈를 보호해주는 역할인 것 같다.

profile
개발 취미로 하는 세일즈맨

0개의 댓글