본문 바로가기

학습

(79)
[The Origin][VSCODE][Django] 로그인/로그아웃을 통한 세션의 이해 인증의 간단한 이해 ※ 자세한 공부가 필요하다 Middle ware - Django에서의 미들웨어 'url 패턴을 정의 → view를 연결 → view 요청/응답' 사이에 있는 호출 - Django 가상환경 안에 인증 Middleware가 있음 권한 - Django에서 권한 특정 모델의 CRUD를 기준으로 부여된 기능들을 나타냄 특정 기능, 데이터를 볼 수 잇는가를 체크 - 기타 특징 그룹별 권한 설정이 가능 ex_회사에서는 개인정보를 담당하는 부서가 별도로 있을 정도로 따로 관리를 해야하기 때문에 권한 필요 - 권한에 대한 code는 작성을 해줘야함 - 인증과 권한은 다름 인증 - 우리 시스템에 접근할 수 이쓴 사람인가를 파악하는 것 - 특별하게 개발을 해야하는 것이 아니라면 기능을 문서를 보고 사용해..
[The Origin][VSCODE][Django] 로그인/로그아웃 기능 구현 로그인 기능 구현 기본 흐름 ※ 데이터 유효성 검사 → 비지니스 로직 처리 → 응답 데이터 유효성 검사 - 정규 표현식이나 제어문, 반복문 등을 활용해서 유효성 검사가 가능하다. 따라하면서 익히기 ※ 원래 세션을 알고 있으면 좋다. 몰라도 따라하면서 가능 - 로그인 미들웨어 : 폼에 대한 렌더링을 도와주고 유효성 검사까지 로그인 확인하기 디버깅을 통해서 확인하기 - 디버깅 확인 - Coding Miss로 인한 문제점 - code Check - 간단하게 log 상태 확인하기 - 실행 후 결과 - 로그인 상태 보안 ※ Tip - 기본 3단계 : 데이터 유효성 → 비지니스 로직 → 응답 - 일부 생략은 처리가 가능하나 기본적인 흐름이라고 애해하면 좋다 로그아웃 Django의 logout 기능 활용 - 템플릿 ..
[The Origin][VSCODE][Django] 회원가입 기능 구현 회원가입 기능 구현 기능 구현을 위한 테스트 환경 - 앱 만들기 - 앱의 urls 추가 (미리 view 이름까지 지정해서 만들었음) - (/App/views.py) 정상 연결 확인용 - (/App/forms.py) 파일 추가 후 내용 채우기 - 프로젝트 urls.py 파일과 앱의 urls.py 연결 - 프로젝트 템플릿 경로에 signup.html추가 (form 활용 예정 참고) - 연결 확인 ※ form은 언제든 원하면 custom이 가능하다 Django 제공 공식문서 - https://docs.djangoproject.com/en/4.0/topics/auth/default/ Using the Django authentication system | Django documentation | Django D..
[The Origin][VSCODE][Django] 사용자(User) 내용 커스텀 하기 Django에서 User (사용자) 사용자 - 공식문서 https://docs.djangoproject.com/en/4.0/ref/contrib/auth/ django.contrib.auth | Django documentation | Django Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate docs.djangoproject.com - 필드 내용 Django의 사용자 살펴보기 - from django.contrib.auth.models import User - class AbstractUser(AbstractBa..
[The Origin][VSCODE][Django][Form] 조금 활용 Form에서 Model 활용하기 Form에서 Model 전체 불러오기 - (/App/forms.py)(/App/views.py) Model로 정의한 데이터 form에 추가 - 실행 후 결과 모델에서 정의햇던 field 전체 불러오기 Form에서 Model의 특정 field만 불러오기 - (/App/forms.py) 불러올 필드명 지정 - 실행 후 결과 Form을 사용해 기능 구현하기 - (/App/forms.py)(/App/views.py) 상세보기 안에 글 남기는 내용 기능 추가 - template 수정 후 실행 결과 - (/App/forms.py) 반복문을 통한 기능 제한 - (/App/forms.py) 원하지 않는 기능 제한 ※ Model Form을 사용할 때에는 Model를 그대로 참고하기 때문에..
[The Origin][VSCODE][Django][Form] 사용해보면서 기능 알기 Form 사용 Form에 대한 공식 문서 https://docs.djangoproject.com/en/4.0/ref/forms/ Forms | Django documentation | Django Django The web framework for perfectionists with deadlines. Overview Download Documentation News Community Code Issues About ♥ Donate docs.djangoproject.com Form 사용 준비 - (/App/forms.py) 파일 추가 - form의 기능들 (Model에 있는것과 유사) Form 사용해보기 Test를 위한 준비 - (/App/forms.py) code 추가 - (/App/views.py)(..
[The Origin][백엔드] 6주차 Form 사용하면서 기능 익히기 - Model 없이 바로 form.py 파일 통해서 화면 구축 - Form 안에 위젯 기능 사용 - Form을 통한 Render ( , , Table ) - Form에서의 POST & 유효성 확보 - Tip : Debug를 통한 Post 확인 Form 활용해 보기 - form으로 정의된 Model 활용하기 (이어서) 원하는 Model field 불러오기 - 연결된 Model을 통한 기능 구현 ( 화면에 바로 연결 ) - 일부 기능 제한 (수정 불가, 작성 불가 등) - Tip : Template 주석과 HTML 주석 차이 - Tip : 유효성 검사 Django에서 User 커스텀 하기 - User 살펴보기 - User 실습 환경 구축 (간단하게 새로 만들기) - User ..
[The Origin][2차][Mission][성찰] FAQ 만들기 해설과 다른점 & 문제점 Code의 차이 - Basic 제출 해설 - Advenced 제출 해설 강의에서 나온 추가 내용 - App은 프로젝트에서 정리할 수 있다 시스템의 목표를 잡고 규모에 따라서 작업을 한다 (사용하지 않는 것은 없애고 목적에 맞는 앱들끼리 같이 묶고 하는 등의 작업) Mission에서의 Point - (기능적) Model에서 Choice 사용 Choice 사용 목적 : 정해진 데이터를 출력하기 위해 Choice 안에 max_length가 있는 이유 : 유효성 검사를 위해서 등 Choice의 선택 대상 형태 (숫자, 문자) 이유 : 컴퓨터에서의 처리 속도&데이터 양 ( 2진법 > 숫자 > 문자 )이 좋아진다 효율적인 코드 진행 = 이점 (Tip) choice의 활용도를 높이는 방법 :..
[The Origin][VSCODE][Django][CRUD] Delete 삭제하기 링크 만들고 기능 연결하기 - (app의 urls.py) 지우기 기능 링크 이름 지정 - (post_card.html) 링크 만들기 - (post_confirm_delete.html) 삭제 화면 구성 {% extends 'base.html' %} {% block title %}글 삭제{% endblock %} {% block content %} Post 삭제 화면 {% csrf_token %} 한번 삭제된 데이터는 복구가 불가능 합니다. 그래도 삭제하시겠습니까? ID : {{ post.id }} 돌아가기 {% include 'mixin/posts/post_card.html' with detail=True %} {% endblock %} 기능구현 - app의 views.py @login_requi..
[The Origin][VSCODE][Django][CRUD] Update 수정 Update ※ update = create + detail 생성하는 화면 + 상세 Data 수정 수정하기(create) 버튼 만들고 연결하기 - 수정하기 url 연결을 위한 name 지정 - post_card에 수정하기 글씨 버튼 만들기 수정하기 화면 이동 - 수정하기 화면(입력 화면)으로 이동 기능 - post_form.html 수정하기 화면 내용 추가 - Load 됐을 때 화면에 기존에 있었던 사진, 내용 추가 {% extends 'base.html' %} {% block title %}글 입력{% endblock %} {% block content %} Post 입력 화면 {% csrf_token %} 이미지 {% if post.image %} 현재 : {{ post.image.name }}..