학습 (79) 썸네일형 리스트형 [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 데이터베이스에서 삭제/안보이게끔 데이터 수정 - 기능 구현을 통한 이해 느낀점 - 교육 자료 애매 저번주에 봤던 자료에 이어서 강의 시.. [The Origin][2차][Mission] FAQ 만들기 github : 3Week_mission 확인! 기본 - 가상환경 설치 → Django 설치 → Django-admin Project → Django-admin App Basic 요구사항 해석 - 단순하게 요구사항을 직역해서 Model 분리 안하고 한개의 모델안에 필드 여러개의 이름으로 작성만 해도 된다고 생각한다. 결과물 (Model 결과) #App의 models.py 파일 내용 from django.db import models # to=user 사용자와 연결하기 위한 import from django.contrib.auth import get_user_model User = get_user_model() class faq(models.Model): # Choices로 연결하기 위한 카테고리 목록 c.. [The Origin][VSCODE][Django] Template Engine 탬플릿 태그 block - {% block name %}{% endblock %} - 자식 템플릿으로 재정의할 수 있는 블록 extends - {% extends ' (템플릿 이름) ' %} - 부모 템플릿을 확장, 상속 include - {% include (템플릿 이름) %} - 템플릿을 로드하고 현재 Context로 렌더링, 템플릿 포함 for - {% for (variable) in (variable_list) %} ..... {% endfor %} - 변수의 배열 항목을 반복 (for문 과 같음) if - {% if bool %} {% endif %} - 조건이 true이면 출력, false인 경우 미출력 (if문과 같음) url - {% url ' (url이름) ' %} - 보기 및 선택적 매.. [The Origin][VSCODE][Django] FBV, CBV 이해 Test 준비 Templates 사용 여부 확인 - settings - TEMPLATES - 'APP_DIRS' Django에서 HTML 사용 - ! 를통 한 실행으로 기본 HTML 형식을 활성화 가능 태그 사용 (a, form) HTML에 추가 경로 인식 방식에 따른 문제 - 경로/ : 경로 뒤에 추가 = 경로가 바뀌어 Error - /경로/ : 경로명이 있으면 그대로 될 수 잇음 FBV (Function Based Views : 함수 기반 뷰) GET 함수 - submit 버튼을 활용해서 활성 - 주소에 바로 수정 POST 함수 - submit 버튼을 활용해서 활성 ※ token은 보안관련 내용으로 보여지는 내용으로 관리의 비밀번호 해싱과 비슷하다 ※ Postvar이 있다 사용 예시 (조건) - Ge.. [The Origin][VSCODE][Django] 화면 Data 출력 방식 (Text, HTML, JSON), Data 받기 (주소, Query parameter) Django의 Data 출력 방식 (text, HTML, JSON) 1. Test를 위한 url 추가 2-1. view를 통한 화면에 문자 출력 - 실행 후 확인 2-2. view에서 HTML을 통한 화면에 문자 출력 - 실행 후 확인 2-3. view에서 JSON 방식 화면에 문자 출력 - 실행 후 확인 View에서 Code에서 HTML Tag 형식으로 볼 수 있는 이유 from django.http import HttpResponse class HttpResponse(HttpResponseBase): """ An HTTP response class with a string as content. This content can be read, appended to, or replaced. """ stre.. 이전 1 ··· 4 5 6 7 8 다음