ModelCls.objects - Default Manager로서 ModelCls.objects가 제공된다. - 일반적으로 order_by를 해주는 것이 좋다. ModelCls.objects.all() ModelCls.objects.all().order_by('-id')[:10] => SELECT * FROM app_model ORDER BY id DESC LIMIT 10; ModelCls.objects.create(title="New Ariticle") => INSERT INTO app_model (title) VALUES ("New Ariticle"); filter vs exclude - parameter로 "필드명 = 조건값"을 지정한다. => Item.objects.filter(name="New ..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/clVTqV/btqI5y8bFUV/iDJju1mk27YJZTrqU9WWdK/img.png)
django.contrib.admin 앱을 통해 제공 - default 경로 : /admin/ => 실제 서비스에서는 다른 주소로 변경 권장 - django-admin-honeypot 앱을 통해 가짜 admin 페이지를 노출시키면 로그인을 시도한 id, ip 등을 수집한다. admin.py in App - 앱 내의 models.py에서 생성한 모델 객체를 admin에서 관리할 수 있게 등록해준다. __str__(던더 string) - admin에서 목록을 볼 때 모델 객체 내의 정보를 Java의 toString처럼 string으로 보기 위해 던더 string을 사용한다. List Display from admin.py in App - 앱 내의 admin.py에서 list_display를 통해 attrib..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/c2Ey9W/btqJearbjJQ/rDkK34i79CMYAPtku6EEd0/img.png)
python manage.py startapp instagram(앱이름) - instagram 앱이름의 앱 생성 settings.py in Project - installed app에 생성된 앱 추가 urls.py in App - urlpatterns 리스트 생성 models.py in App - 앱 내의 models.py에서 모델을 생성 - DateTimeField의 auto_now_add는 새로운 내용을 생성시 현재 시간을 새롭게 적어 만들어주는 옵션 - auto_now는 이미 존재하는 시간값을 새로운 글을 작성할 때의 현재 시간으로 갱신해주는 옵션 python manage.py makemigrations instagram - instagram 앱에 존재하는 models.py의 모델 객체를 sql로 ..
Logging - 다양한 경로로 메세지 로깅(파이썬에서 지원해주는 로깅 시스템을 django도 지원해준다.) Messages framework - 유저에게 1회성 메세지 노출 목적의 프레임워크 Forms - 유저가 어떤 값을 입력하는 입력폼(입력 서식) 생성, 입력값 유효성 검사 및 DB로의 저장 캐싱 - 메모리 캐싱, 디스크 캐싱 등을 django에서 표준화된 인터페이스로 지원해준다. Geographic - DB의 Geo 기능 활용 Django 기본 앱 - django 디렉토리의 django/django/tree/master/django/contrib 에 존재 - 앱은 django가 규정해놓은 하나의 파이썬 패키지이다. - admin(관리자), auth(인증), messages(메세지 프레임워크), s..
django-admin startproject (프로젝트명) - (프로젝트명)으로 django 프로젝트 생성 - python -m django startproject (프로젝트명) 으로도 가능 conda env list - conda에서 생성한 가상환경 리스트를 확인한다. 프로젝트 폴더명 - 생성된 프로젝트의 최상위 폴더명은 단순한 폴더의 이름 뿐이므로 변경 가능하다. 하지만 프로젝트 내부에 존재하는 같은 이름의 프로젝트 폴더명은 settings.py, __init__.py, urls.py, wsgi.py 등에서 참조하고 있기 때문에 변경하면 안된다. asgi.py // wsgi.py - django 3.0에서는 asgi.py가 추가되었는데 비동기쪽 지원이 가능한 부분이다. python manage.py..
conda create --name (가상환경이름) python=3.8 - conda에서 가상환경이름으로 python버전이 3.8인 가상환경을 설치하겠다. conda activate (가상환경이름) // conda deactivate - 가상환경으로 진입한다 // 가상환경에서 나온다. where python/pip // exit() - 설치된 python, pip의 위치를 확인한다. (가상환경) pip install "django~=3.0.0" - 3.0.*버전 중에 최신 버전 설치를 시도한다. django-admin --version - django version 확인
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/2XOhd/btqGZIlcmh9/aT4tjN5p2bHhKAi4ciMkj1/img.png)
templates 폴더 - app 폴더 안에 templates 폴더를 만들어주고 그 안에 html을 작성한다. vs code에서 template html 설정바꾸기 - ctrl + K 를 누른 후 M을 눌러 모드를 검색해 html로 바꿔준다.(자동완성을 쓰기 위해) form tag로 url 넘어가기 1 cs - url의 result에 form tag 안의 자료를 POST 방식으로 전달하겠다. 여기서 action은 해당 url로 넘어가는 것 까지 역할을 한다. html에서 변수 접근하기 - {{변수}} 로 이중 중괄호를 활용하여 변수를 가져온다. Django에서 CSS 사용하기 - app안에 static 폴더를 만들어준다. - head에 link와 load static을 넣어준다.
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/FURKj/btqGTnmPHAT/B9giuDDVTGdYEIfFwCWhrK/img.png)
프로젝트의 urls에 url request를 설정할 경우 - urls.py는 request url을 받았을 때 어떤 뷰와 매핑 될 지를 결정해 주고, 이러한 이유로 여러 앱들에서 같은 이름의 여러한 views를 import해주어야 하는 문제가 발생한다. 또한 한 페이지에 존재하는 수많은 url 패턴들을 일일히 지정해주어야하는 문제가 발생한다. 각각의 app urls에서 request를 설정하는 방법 - app 내의 urls.py을 만들어 설정해준다. views모듈을 같은 posts 패키지 내에서 import해주기 때문에 현재 디렉토리를 뜻하는 . 에서 import 해준다. 또 path에서 원래 적었던 'posts/' 가 아닌 빈 문자열로 설정해준다. - 프로젝트의 urls.py에서 추가 설정을 해준다. ..
- Total
- Today
- Yesterday
- django#slicing
- 백준 알고리즘#BackTracking
- N으로 표현#DP#Programmers#Python
- 터틀비치#리콘#xbox#controller
- 텀 프로젝트#백준알고리즘#Python
- filter#isalnum#lower
- Triangle#Sorting#Codility#Python
- 토마토#백준알고리즘#Python
- 배열합치기#분할정복#BOJ#Python
- 나무자르기#BOJ#이분탐색#Python
- 날짜 계산#BOJ#완전탐색#Python
- Swift#Tuples#Range
- 병든 나이트#BOJ#탐욕법#Python
- django
- NumberofDiscIntersections#Codility#Sort#Python
- 암호코드#dp#BOJ#Python
- 순열사이클#BOJ#Python
- 랜선자르기#이분탐색#BOJ#Python
- 리모컨#완전탐색#BOJ#Python
- 미로 탐색#백준알고리즘#Python
- 섬의개수#백준알고리즘#Python
- 반복수열#백준알고리즘#Python
- Distinct#Codility#Python
- PassingCars#Codility#Python
- Brackets#Stacks and Queues#Codility#Python
- 쿼드트리#BOJ#분할정복#Python
- 공유기 설치#BOJ#이분탐색#Python
- 파이썬알고리즘인터뷰#4장
- API#lazy#
- 종이자르기#분할정복#BOJ#Python
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |