일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- sd()
- javascript
- 점프투장고
- while
- 반복문
- 조건문
- Swift
- react
- 제어문
- R 데이터 분석
- 자료형
- pycharm
- ReactNative
- mutate()
- 별찍기
- python
- 동일성 연산자
- Django
- group_by()
- 소수출력
- 멤버십 연산자
- sqldf
- COUNT()
- vs code
- notion
- summarise()
- inflearn
- f-string
- match case
- input함수
- Today
- Total
목록ETC./Do it! 점프 투 장고 (9)
✏️

앞에서 질문 등록, 조회 기능을 만들었고, 이번에는 답변 등록과 답변을 보여주는 기능을 만들어 보자. 답변 저장하고 표시하기 01단계 질문 상세 템플릿에 답변 등록 버튼 만들기 질문 상세 템플릿 pybo/question_detail.html 파일을 수정하자. form 엘리먼트 안에 textarea 엘리먼트와 input 엘리먼트를 포함시켜 답변 내용, 답변 등록 버튼을 추가하자. 버튼을 누를 때 호출되는 URL은 action 속성에 있는 {% url 'pybo:answer_create' question.id %} 이다. 그리고 form 엘리먼트 바로 아래에 있는 {% csrf_token %} 은 보안 관련 항목이다. - form 엘리먼트를 통해 전송된 데이터(답변)가 실제로 웹 브라우저에서 작성된 데이터인..

템플릿에서 사용한 URL 하드 코딩을 없애는 방법을 알아보자. URL 하드 코딩이란? question_list.html 템플릿에 사용된 href값을 보자. "/pybo/{{ question.id }} => 질문 상세를 위한 URL 규칙. 이런 URL규칙은 프로그램을 수정하면서 '/pybo/question/2/' 또는 '/pybo/2/question/'으로 수정될 가능성이 있다. 이런 식으로 URL규칙이 자주 변경된다면 템플릿에 사용된 모든 href값들을 일일이 찾아 수정해야 한다. URL 하드 코딩의 한계인 셈이다. 이런 문제를 해결하려면 해당 URL에 대한 실제 주소가 아닌 주소가 매핑된 URL별칭을 사용해야 한다. URL 별칭으로 URL 하드 코딩 문제 해결하기 URL 별칭을 파이보에 적용해보자 01..

파이보의 핵심 기능인 질문 목록과 질문 상세 기능을 구현할 것이다. /pybo/에 접속하면 질문을 모두 조회할 수 있는 기능을 구현해보자. 질문 목록 조회 구현하기 질문 목록 조회를 위해 pybo/views.py 파일을 열어 코드를 수정하자. 01단계 Question 모델 데이터 작성일시 역순으로 조회하기 Question 모델을 임포트해서 Question 모델 데이터를 작성한 날짜의 역순으로 조회하기 위해 order_by 함수를 사용했다. 조회한 Question 모델 데이터는 context 변수에 저장했다. context 변수는 조금 후에 설명할 render 함수가 템플릿을 HTML로 변환하는 과정에서 사용되는 데이터이다. order_by 함수는 조회한 데이터를 특정 속성으로 정렬하며, '-create_..

장고 Admin 사용하기 장고 Admin을 사용하려면 슈퍼 유저를 먼저 생성해야 한다. (슈퍼유저 = 장고 운영자 계정) 01단계 슈퍼 유저 생성하기 명령프롬프트에서 py manage.py createsuperuser 명령을 실행해서 슈퍼유저 생성하기. 사용자 이름 : adminㅁ 이메일주소 : 가상의 이메일 작성(admin@mysite.com) password : 1234로 입력했는데 보이지 않음. (again)은 비밀번호 확인. 비밀번호를 단순하게 입력했기 때문에 경고 메시지가 나왔다. 연습용이기 때문에 이대로 하기 위해서 y 를 입력했다. 02단계 장고 Admin에 접속해 로그인하기 1단계에서 슈퍼유저가 생성되었으니 장고 개발 서버를 구동한 후 localhost:8000/admin 에 접속하자. 앞..

장고는 모델로 데이터를 관리한다. 보통 웹 개발에서는 데이터의 저장/조회를 위해 SQL 쿼리문을 이용한다. 이는 데이터 저장/조회를 위해서는 별도의 SQL 쿼리문을 배워야 한다는 말고 같다. 하지만 장고에서 모델을 사용하면 SQL 쿼리문을 몰라도 데이터를 저장/조회할 수 있다. migrate와 테이블 알아보기 01단계 장고 개발 서버 구동 시 나오는 경고 메시지 살펴보기 명령프롬프트 or 터미널에서 py manage.py runserver 명령어를 입력하면 나오는 경고 메시지가 있다. You have 18 unapplied migration(s). = 아직 적용되지 않은 18개의 migration이 있다. 위 오류를 해결하려면 py manage.py migrate를 실행해야 한다는 안내문도 있다. 02단..

1장에서 mysite 프로젝트를 생성했고, 이 프로젝트에는 장고가 제공하는 기본 앱과 개발자가 직접 만든 앱이 포함될 수 있다. 앱 생성하고 확인하기 01단계 pybo 앱 생성하기 명령프롬프트에서 django-admin의 startapp 명령을 이용해서 pybo앱을 생성. 02단계 생성된 앱 확인하기 1단계 진행하고 아무 변화가 없어 보이지만 파이참에서 왼쪽 디렉터리 목록을 보면 pybo 디렉터리가 생성되어 있음을 확인할 수 있다. pybo 하위 파일들이 pybo앱을 위한 것이다. 안녕하세요 파이보? 01단계 개발 서버 구동하기 py manage.py runserver 명령어를 입력해서 개발 서버를 구동했다. 02단계 localhost:8000/pybo에 접속하기 웹 브라우저 주소창에 [ localhos..
보통 파이썬과 장고 개발에서 많이 사용되는 에디터 = VS Code, PyCharm 학원에서는 비주얼 스튜디오 코드를 사용했는데 이 책에서는 파이참을 사용한다고 함. 이번 기회에 새로운 에디터를 사용해 볼 수 있겠구먼!! https://www.jetbrains.com/ko-kr/pycharm/download/#section=windows 다운로드 PyCharm: JetBrains가 만든 전문 개발자용 Python IDE www.jetbrains.com 위 주소에서 파이참 설치 가능. 그 외 장고 개발 서버 실행하는 방법은 생략. 빨리 진도 빼야됨.

장고에서 프로젝트 = 하나의 웹 사이트 장고 프로젝트 생성 = 한 개의 웹사이트 생성 프로젝트 안에는 여러 앱들이 존재한다. 이 앱들이 모여서 웹 사이트를 구성하는 것. 앱 = 관리자 앱, 인증 앱 등 장고에서 기본으로 제공하는 앱 + 개발자가 직접 만든 앱 프로젝트 디렉터리 생성하기 01단계 프로젝트 루트 디렉터리 생성하기 장고 프로젝트가 여러 개가 될 수 있으므로 프로젝트를 모아 둘 프로젝트 루트 디렉토리(=최상위 폴더)가 필요하다 - C드라이브로 이동 - C드라이브 안에 projects 폴더 생성 (앞으로의 장고 프로젝트를 모아 둘 폴더) - projects 폴더로 이동 02단계 프로젝트 루트 디렉터리 안에서 가상 환경 진입하기 C:\doit_venvs\mysite\Scripts\activate 명..