본문 바로가기

학습/[The-Origin][SW][Backend] Main Pag

(43)
[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 }}..
[The Origin][VSCODE][Django][CRUD] Read (2) 상세보기 (더보기) 기능 구현 ※ 같은 페이지에서 보이는게 아니라 상세 페이지로 이동 상세(더보기) 이동 기능추가 - (app의 urls.py) post-detail 이라는 이름으로 지정 def post_detail_view(request, id): post_detail = post.objects.get(id=id) context = { 'post' : post_detail } return render(request, 'posts/post_detail.html', context) - detail_view로 이동된 후에 list 내용과 유사하게 detail의 내용도 보여지게 기능 추가 - list와 다르게 한개만 보여주면 되기때문에 for 반복문은 필요 없음 - 더보기 글씨 click시 이동 (a Tag ..
[The Origin][VSCODE][Django][CRUD] Read 데이터베이스 list Read해서 불러오기 (감 잡기) ※ 이후에 post_card.html을 통해서 보여줄 것이기 때문에 보여주는 방식을 이해하는 용도 Test를 통한 이해 - (app의 views.py) 전체 list 불러오는 기능 추가 - (templates/post/post_list.html) data 들어가는 것 확인 - 실행 결과 List 보여지는것 꾸미기 - (templates/post/post_list.html) data를 for문으로 각 컬럼들 까지 보이게 만들기 - 실행 결과 List 내용 'filter'를 사용해서 제한하기 - (app의 views.py) 작성자(user)에 따른 내용 제한 - 관리자 로그인 후 확인 (writer에 따른 내용 보여짐) ※ query가 어떻게 날라가는지..
[The Origin][VSCODE][Django][CRUD] Create 생성을 위한 화면 생성 화면 구현 화면에서의 문제점 (1) csrf 토큰 - csrf = 사용자가 원하지 않았지만 해킹한 사람의 의도대로 특정 site에 요청을 날리는 공격 - csrf 토큰 = 인증된 사용자만 사용 가능하게끔 만들어주는 기능 - csrf 토큰 설정 - 검사를 통해서 token으로 들어왓는지 확인 가능 화면에서의 문제점 (2) 이미지 파일 형식 - 데이터 확인 (image = none??) - 이미지 encoding (enctype="multipart/form-data") 생성을 위한 기능 추가 DB에 Data 추가 - (app의 view.py) 기능 추가 writer의 user 문제 - login을 하지 않아 user이름(request.user)이 없기 때문에 Error가 발생 - ad..
[The Origin][VSCODE][Django][CRUD] 실습 준비 사전 준비 ※ 이전 내용에서 template 추가가 필요하고 이에따른 static도 같이 넣어줘야한다. Static Static 폴더 제작 및 파일 추가 - 프로젝트 최상위(root)에 해당하는 폴더, 내용 추가 Static 파일 경로 설정 - 프로젝트 settings에서 static 파일 경로 설정 Templates 유사 instagram 기본 템플릿 - post_card.html (templates/원하는 경로) {% load static %} likelion.official 좋아요 00개 likelion.official{{ "실무와 현업에서 필요로 하는 백엔드 개발자로의 역량 배양에 효과적"|truncatechars:35 }} 더보기 댓글 0개 모두 보기 likelion.official댓글 내용....
[The Origin][VSCODE][Django] Debug Toolbar 설치하기 공식 문서 https://django-debug-toolbar.readthedocs.io/en/latest/installation.html Installation — Django Debug Toolbar 3.2.4 documentation Troubleshooting On some platforms, the Django runserver command may use incorrect content types for static assets. To guess content types, Django relies on the mimetypes module from the Python standard library, which itself relies on the underlying platfor dj..
[The Origin][백엔드] 5주차 CRUD - 개념 - 예시 준비 - 실습을 위한 form(template) 추가 - css 추가하기 Create - 생성하기 기능 추가 - 생성하기 기동 원리 (임지저장 → 데이터베이스에 저장) Read - 데이터베이스에서 데이터 읽어오기 (url - view - template) - template에 맞춰서 data 집어 넣기 - template(html)의 반복문, 조건문 사용하기 Update - Update 원리 (create + detail) - tip (로그인 계정에 따른 Error 처리) Delete - Hardware Delete/Software Delete 데이터베이스에서 삭제/안보이게끔 데이터 수정 - 기능 구현을 통한 이해 느낀점 - 교육 자료 애매 저번주에 봤던 자료에 이어서 강의 시..