Django form 주요 유효성 검사 도구들 중 하나. 공격 및 우연한 데이터 손상에 대한 중요한 방어수단 ▶사용자화면에 그려주기 위해서 준비하는 과정. ▶html form을 만든다. ▶사용자로부터 form data를 받아서 가공해준다. Form Class를 상속 받아서 폼을 재정의한다. 모델에서textfield가 존재하지 않는다. 위젯이라는 것으로 input의 타입을 바꿔준다. *as_p() : 각 필드가 단락(태그)으로 렌더링 *as_ul() :각필드가 목록으로 렌더링 *as_table() :각 필드가 테이블 행으로 렌더링 Widgets :제출된 원시 데이터 추출을 처리. 독자적으로 사용으로 못하고 form field안에 있어야 함 ModelForm Class : Meta Class가 존재. 메타클..
#가상환경 만들 때 가상환경 생성 python -m venv venv 가상환경 진입 source venv/Scripts/activate requirements.txt에라이브러리 명시 pip freeze > requirements.txt #clone받아와서 가상환경 만들어줄 때 pip install -r requirements.txt python manage.py migrate python manage.py loaddata movies/movies.json py manage.py runserver
DB API를 통해서 crud를 한다. DB를 조작하기위한 도구 . 디비와 대화 구문: 클래스이름.오브젝트매니저.쿼리셋API 쿼리셋 : 데이터베이스로부터 전달받은 객체목록 #Http 매서드 - POST/ GET 사용자가 파일을 줘(get)이 아니라 어떠한 레코드 생성해(post)이라면 post를 사용해야한다. GET은 url에 직접 노출되어 위험하고 post로 해야 안전하다. 모델(DB)를 건드리는 것은 안전한 post로 요청해야한다. GET : 문서를 가져오다.(R) 디비상태는 바꾸지 않는다. 필요한 데이터는 url에 담는다. 특정 리소스를 가져온다. 반드시 데이터를 가져올 때만 사용해야함 POST : 작성하다. 디비의 상태를 바꾼다.(글 생성 수정 삭제) 필요한 데이터는 http body에 담는다. ..
모델 : 웹 어플리케이션의 데이터를 구조화하고 조작하기 위한 도구, 단일한 데이터 정보를 가짐 저장된 데이터베이스의 구조 model ≠ database 모델은 1대1 매핑됨 모델이 데이터베이스보다 큰 개념이라고 생각하면 된다. ORM :SQL을 잘 알지 못해도 DB조작이 가능, 완벽하진 않음. 생산성에 좋음. 서로다른 시스템간의 호환성을 위해서 사용한다. DB를 객체로 조작하기 위해 orm을 이용한다. models.CharField(max_length = 10) #글자수 제한을 둘 때 사용 models.TextFiled() # 길이가 정해져있지 않을 때 사용 Migrations :장고가 모델에 생긴 변화를 반영하는 방법 *makemigrations :모델을 변경한 것에 기반한 새로운 마이그레이션을 만들 ..
템플릿 상속은 기본적으로 코드의 재사용성에 초점을 맞춤 {% extends %} 자식 템플릿이 부모 템플릿을 확장한다는 것을 알림 반드시 템플릿 최상단에 작성되어야 함 (% block %} - {% enblock %} 하위 템플릿에 재정의 할 수 있는 블록을 정의즉, 하위템플릿이 채울 수 있는 공간 ==>장고 템플릿 설계 철학 1. 표현과 로직(view)을 분리시킨다. 2. 템플릿 상속으로 중복을 배제한다. form 태그 = 사용자로부터 할당된 데이터를 서버로 전송하는 역할 핵심속성 : action :입력시 데이터가 전송될 url지정 method : 입력 데이터 전달 방식 지정 input에서 name 는 데이터의 키, value는 value URLs 웹 클라이언트의 요청에서부터 시작 됨. 프로젝트의 ur..
MVC패턴 = 모델-뷰-컨트롤러 :소프트웨어의 디자인패턴 장고에서는 MVT 패턴 = 모델-템플릿-뷰 모델-데이터베이스관리, 템플릿-레이아웃(화면),뷰-중심컨트롤러(심장) 장고는 app을 만들어줘서 거기서 만든것을 보여줄 수 있다. 1. app이름은 복수형 2. app 생성(startapp) 후 등록 앱을 입력해주는 순서 1.로컬 앱 (ex. 'articles') 2. 서드파티 라이브러리 3. 장고 코어앱 콤마를 붙여주는것 , => 트레이링 콤마 에러뜨는 것을 방지해주는 개념 Laguage_code = 'ko-kr' //한국 언어로 번역해줌 (#Internationalization 국제화 라이브러리) Time_Zone ='Asia/Seoul' //대륙이름/서울시간 장고는 기본적으로 첫번째 인자에다가 자동적..
- Total
- Today
- Yesterday
- 세션 스토리지
- 자바
- vue.js
- 안드로이드스튜디오
- 알고리즘
- Pyhton
- DOM
- AWS
- javascript
- 프로그래머스
- 배포
- django
- Java
- Python
- 백준
- 비동기패턴
- SQL
- SSAFY퇴소
- 파이썬
- splide
- SWEA
- git
- 싸피
- 위클리챌린지2주차
- 독학
- vue
- 트리
- commit되돌리기
- SSAFY
- N과M
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |