Python/Django

[Django] 데이터베이스에 초기(initial) 데이터 입력Json 또는 Yaml 형식으로 초기 데이터를 입력. - model : 앱이름.테이블명 # Json [ { "model": "myapp.person", "pk": 1, "fields": { "first_name": "John", "last_name": "Lennon" } }, { "model": "myapp.person", "pk": 2, "fields": { "first_name": "Paul", "last_name": "McCartney" } } ] # Yaml - model: myapp.person pk: 1 fields: first_name: John last_name: Lennon - model: myapp.person pk: 2 f..
[Django] Performing raw SQL queries : SQL 쿼리 맵핑 Django는 원시 SQL 쿼리를 수행하는 두 가지 방법을 제공한다 : 1. Manager.raw ()를 사용하여 원시 쿼리(raw queries)를 수행하고 모델 인스턴스를 반환.2. 모델 레이어를 완전히 피하고 사용자 정의 SQL을 직접 실행. *raw SQL을 사용할 때마다 조심해야한다. 사용할 때마다 SQL Injection 공격으로 부터 보호하기 위해 params을 사용하여 사용자가 제어할 수 있는 파라메터를 벗어나도록 해야한다. SQL Injection 보호에 대해 자세히 읽어 보라. Performing raw queries 원시 쿼리 실행 raw() 매니저 메소드는 모델 인스턴스를 반환하는 원시 SQL를 사..
[Django] Custom template tags and filters 사용자 정의 템플릿 태그 -장고에는 수많은 태그와 필터(built-in tags and filter)를 제공하지만, 그럼에도 불구하고 기본적으로 제공하는 태그와 필터가 아닌 자신만의 기능적인 태그나 필터가 필요할 때가 있다. 템플릿 엔진을 파이썬으로 된 커스텀 태그와 필터(Custom tags and filters)를 정의하여 확장이 가능하다. Code Layout 코드 레이아웃 사용자 정의 태그와 필터를 지정하는 가장 일반적인 장소는 장고 앱 내부이다. 만약, 그것들이 현존하는 앱과 연관되어있다면, 그곳에 번들로 묶는 것이 좋다. 그렇지 않으면, 새로운 앱에 그것들을 추가할 수 있다. 장고 앱을 INSTALLED_APPS에 추가..
[Django] context_processors #Context_processor? - templates에서 사용되는 변수들을 미리 정의하여, 중복 선언을 피하는 방법이다. - 코드(프로세서 호출)에서 중복성을 추가하는 대신 데이터(템플릿 변수)에서 중복성을 제거한다. - RequestContext를 사용하여 템플릿을 랜더링 할 때, 사용자가 정의한 프로세서를 전달한다. - RequestContextdml의 첫번째 인수는 HttpRequest객체, 즉, view뷰 함수로 전달된 객체 request가 돼야 하며, 두번째 인수는 선택적 프로세서 인수(함수의 목록 또는 튜플)을(를) 취한다. Ex) View01 과 view02에서 app, user, ip-address 콘텍스트를 중복해서 사용되고 있다. #..
HttpRequest 객체 정보 속성/메서드 설명 예제 request.path 전체 경로, 도메인을 포함하지 않음. 단 선행 슬래시 포함. "/hello/" reqeust.get_host() 호스트(=도메인) "127.0.0.1:8000" "www.naver.com" request.get_full_path() 경로와 쿼리 문자열(사용할 수 있는 경우) "/hello/?param=true" request.is_secure() 요청이 HTTPS를 통해 이뤄진 경우 True. 그렇지 않은 경우 False. True / False [표 6.1] HttpRequest 메서드와 속성 참고 : 장고마스터하기
모델(Model)생성 1. 앱(app) 생성 ex) `app_blog`라는 앱 생성한다. (venv) C:\PycharmProjects\DjangoStart>python manage.py startapp app_blog 2. settings.py 파일에서 `INSTALLED_APPS`에 방금 생성한 app 추가. 추가하므로서, 장고에 해당 앱을 사용해야 한다고 알려주게 된다. # Application definition INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.co..
S0PH1A
'Python/Django' 카테고리의 글 목록 (5 Page)