Back-end & Server/Django (14) 썸네일형 리스트형 [Django] 배포 지금까지 Django 실습을 할 때 항상 다음과 같은 명령어로 Django를 실행해 실습을 진행했음 python manage.py runserver 이 방법은 웹 서버 설정에 대해 걱정할 필요가 없지만 공용 웹에 노출되지 않고 로컬 컴퓨터에서의 개발용으로만 사용됨 공용 웹에 Django 응용 프로그램을 배포하려면 아파치 같은 웹 서버에 연결해야함 배포 체크리스트 Django 응용 프로그램을 배포하기전 보안, 성능 및 작업을 염두에 두고 설정을 검토해야함 Django에는 많은 보안 기능(일부는 내장돼 있으며 항상 활성화 상태임)이 포함돼 있음, 이외의 기능들은 항상 적절하지 않거나 개발에 불편하기 때문에 선택사항임(ex. HTTPS는 모든 웹 사이트에 적절하지 않을 수 있음) 체크리스트에 포함된 설정들 D.. [Django] 테스팅 Django는 인빌트(inbuilt) 단위의 테스트 기능을 제공 단위 테스트 개별적인 방법을 테스트해 올바른 값을 반환하는지 여부와 무효한 데이터를 처리하는 방법, 사용자 입력 시퀀스가 원하는 결과를 얻을 수 있도록 모든 방법을 테스트하는 등 다양한 수준에서 수행할 수 있음 네 가지 기본 개념을 기반으로 함 테스트 픽스처(Test Fixture) 테스트를 수행하는 데 필요한 설정 DB, 샘플 데이터 세트, 서버 설정 등 테스트 수행 후 필요한 모든 정리 작업이 포함될 수 있음 테스트 케이스(Test Case) 테스트의 기본 단위 주어진 입력 세트가 예상 결과 세트가 되는지 여부를 확인 테스트 스위트(Test Suite) 그룹으로 실행되는 여러 테스트 케이스 또는 다른 테스트 스위트 테스트 러너(Test .. [Django] 고급 기능들 디버그 모드의 특수 케이스 URL URL 패턴을 동적으로 생성하는 방법, DEBUG 설정이 True로 되어 있어야함 # views.py from django.http import HttpResponse as HR def debug(request): return HR('추가된 페이지') # urls.py from django.urls import re_path from django.conf import settings if settings.DEBUG: urlpatterns +=[re_path(r'^debuginfo/$',debug)] 원시 쿼리 실행 모델 객체.objects.raw(raw_query, params=None, translations=None)으로 원시 쿼리를 수행할 수 있음 Publisher.. [Django] 폼(Form) HttpRequeast views.py에 정의된 개별 함수들은 HttpRequest 객체(request 매개변수)를 첫 번째 매개변수로 가짐 HttpRequest의 속성 및 메서드 속성/메서드 설명 예제 request.path 전체 경로, 도메인을 포함하지 않고 선행 슬래시를 포함 '/hello/' request.get_host() 호스트(즉, '도메인', 공통 용어) '127.0.0.1:8000' or 'www.example/com' request.get_full_path() 경로와 쿼리 문자열(사용할 수 있는 경우) '/hello/?print=true' request.is_secure() 요청이 HTTPS를 통해 이뤄진 경우 True, 아닌 경우 False True or False 요청에 대한 기타 .. [Django] Admin 사이트 Admin 계정 생성 먼저 터미널에 다음과 같은 명령어를 실행 python manage.py createsuperuser 원하는 사용자 이름을 입력 Username : admin 원하는 전자 메일 주소 입력 Email address : pupbani@pupletokki.com 비밀번호 입력 Password : ********* Password (again) : ********* Admin 사이트 서버를 실행하고 /admin/로 접속하기 만들었던 관리자 계정으로 로그인 이 웹 페이지에서는 다양한 권한과 같은 사용자 속성을 변경할 수 있음 History 페이지를 통해 변경 사항을 확인할 수 있음 관리자 페이지에서 데이터베이스 관리 만들어둔 앱 디렉터리 내에 admin.py 라는 파일에 다음과 같은 코드를 삽.. 이전 1 2 3 다음