전체 글(85)
-
[Python Django] 필드 타입 클래스 정리
CharField 작은 문자열 또는 큰 문자열을 위한 필드 TextField 큰 문자열 필드 EmailField EmailValidator를 이용하여 값이 유효한 이메일인지 체크하는 CharField IntegerField 정수 필드 -2147483648 ~ 2147483648 FloatField 실수 필드 BoolendField True / False 필드 DateTimeField 날짜와 시간을 가지는 필드 DateField 파이썬의 datertie.date 인스턴스로 표현되는 날짜의 필드타입 auto_now=false auto_now_add=false FileFiled 파일 업로드 필드 ImageField 이미지 파일인지 유효성을 체크해주는 FileFiled의 파생 클래스 AutoField 1부터 시..
2022.03.26 -
[Python Django] 2-6. FBV Delete 구현하기
간단하게 페이지에 접근하면 현재 로그인한 회원을 정보를 삭제하는 프로세스를 만들어보겠다. Board 모델에서 ForiegnKey로 연결할때 on_delete=CASCADE 설정을 해두었기 때문에 유저가 삭제되면 게시글이 삭제된다. view.py # 회원 탈퇴기능. 자신의 회원 정보를 삭제한다. # board에 on_delete를 CASCADE로 설정하였기 때문에 유저를 삭제하면 게시글도 삭제된다. def delete(request): user_id = request.session.get('user_id') if not user_id: return redirect("/user/login") else: try: user = User.objects.get(pk=user_id) user.delete() retu..
2022.03.26 -
[Python Django] 2-5. FBV List, Pagination 구현하기
veiws.py 수정 def list(request): # user 정보 user_data = User.objects.all().order_by('-id') # paginator paginator = Paginator(user_data, 5) # user_data를 기반으로 paginator생성, 페이지당 5개 page = int(request.GET.get('p', 1)) # 현재 페이지 세팅, 없으면 1 user_list = paginator.get_page(page) # 현재 페이지의 user_list 생성 return render(request, 'list.html', {'user_list': user_list}) usrls.py 수정 from django.urls import path from ..
2022.03.26 -
[Python Django] 2-4. FBV Form을 이용한 Update 구현
모델 변경 유저 모델을 약간 수정하였습니다 insert_date 옵션을 auto_now => auto_now_add로 바꾸고, update_date를 추가해주었습니다. auto_now는 저장될 때마다 시간을 기록하고, auto_now_add는 생성 시점의 시간을 기록합니다. # user/models.py class User(models.Model): user_name = models.CharField(max_length=64, verbose_name="사용자 명") user_email = models.EmailField(max_length=256, verbose_name="이메일") password = models.CharField(max_length=256, verbose_name="비밀 번호") in..
2022.03.26 -
[Python Django] 2-3. FBV Form을이용한 Login, Logout 구현
Login 구현 1. form 등록 # user/forms.py from django import forms from django.contrib.auth.hashers import check_password from django.forms.utils import ErrorList from user.models import User class LoginForm(forms.ModelForm): user_email = forms.EmailField( max_length=256, label="이메일", error_messages={"required": "이메일을 입력해주세요"} ) password = forms.CharField( widget=forms.PasswordInput, min_length=8, max..
2022.03.26 -
[Python Django] 2-2. FBV 함수를 이용한 Create 구현
함수를 이용한 CREATE 구현 views.py와 html 템플릿만을 이용한 가장 단순한 방식의 코드입니다. user/views.py from django.contrib.auth.hashers import make_password from django.shortcuts import render from user.models import User def create(request): if request.method == 'GET': # method가 GET이면 유저 생성 페이지를 보여준다 return render(request, 'create.html') elif request.method == 'POST': # method가 POST이면 유저를 생성한다 # 전달받은 인자값을 정리한다 user_name =..
2022.03.26