분류 전체보기 (135) 썸네일형 리스트형 [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 데이터베이스에서 삭제/안보이게끔 데이터 수정 - 기능 구현을 통한 이해 느낀점 - 교육 자료 애매 저번주에 봤던 자료에 이어서 강의 시.. [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이름) ' %} - 보기 및 선택적 매.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 14 다음