Django
-
Part 7 관리자 페이지 커스터마이징Django 2022. 7. 4. 15:45
관리자 폼 커스터마이징 polls/admin.py 파일을 다음과 같이 수정해 주세요. from django.contrib import admin from .models import Question class QuestionAdmin(admin.ModelAdmin): fields = ['pub_date', 'question_text'] admin.site.register(Question, QuestionAdmin) admin을 커스터마이징 하기 위해서 admin을 상속받는 클래스를 하나 만들어 줍니다. 클래스 내에 우리가 필요로 하는 값을 직접 부여해서 커스터마이징합니다. 필드를 직접 명시하여 보여지는 데이터 순서를 변경할 수 있습니다. (여기서는 “발행일”이 “설문” 필드 앞에 오게 만들었습니다.) 모델..
-
Part 6 정적 파일Django 2022. 7. 3. 18:50
우리는 테스트된 Web-poll 애플리케이션을 구축했으며, 이제 스타일시트와 이미지를 추가할 것입니다. 서버에서 생성 된 HTML을 제외하고, 웹 어플리케이션은 일반적으로 전체 웹 페이지를 렌더링(사용자가 서버로부터 데이터를 받아 자신의 화면에 보여지는 작업)하는데 필요한 추가 파일 — 예:이미지, JavaScript 또는 CSS — 을 제공해야합니다. Django에서는 이러한 파일을 “정적 파일”(static) 이라고 부릅니다. 앱의 모양과 느낌을 원하는 대로 바꿔보세요. polls 디렉토리에 static 디렉토리를 만듭니다. 템플릿과 마찬가지로 css 파일을 그냥 static안에 넣어도 되지만 다른 애플리케이션에 같은 이름의 정적 파일이 있으면 Django는 이들 파일을 구별할 수 없기 때문에 앱이름..
-
Part 5 테스팅Django 2022. 7. 2. 17:20
테스트를 만들어야 하는 이유 테스트를 통해 시간을 절약 할 수 있습니다. 테스트는 문제를 그저 식별하는 것이 아니라 예방합니다. 테스트가 코드를 더 매력적으로 만듭니다. 테스트는 팀이 함께 일하는것을 돕습니다. 첫 번째 테스트 작성하기 polls/models.py에 기존에 작성한 코드를 살펴보면 약간의 문제가 있습니다. 생성날짜가 미래에 생성된 데이터는 최근으로 간주하지 않습니다. 미래의 날짜는 False로 나와야 합니다. shell을 사용해 미래의 날짜로 메소드를 실행해 버그를 확인해 봅시다. 관련 패키지들을 import하고 현재 시간에 30일을 더한 날의 생성날짜를 가진 Question을 만듭니다. 최근 식별 함수(was_published_recently( ))를 호출하면 미래생성 날짜임에도 불구하고..
-
Part 4 폼과 기본 뷰Django 2022. 7. 2. 13:41
간단한 폼 쓰기 polls/detail.html템플릿에 HTML 요소를 포함시켜 봅시다. polls/templates/polls/detail.html¶ {% csrf_token %} {{ question.question_text }} {% if error_message %}{{ error_message }}{% endif %} {% for choice in question.choice_set.all %} {{ choice.choice_text }} {% endfor %} 기존에 확인했던 What's new?라는 질문을 확인할 수 있는 question_text가 있고 에러 메시지를 전달받게 되면 에러메시지를 출력하는 if문이 보입니다. label은 이름(choice 목록들)을 보여주고 input은 사용자가..
-
Part 3 뷰와 템플릿Django 2022. 7. 1. 18:41
view는 일반적으로 특정한 기능을 제공하고 특정한 템플릿을 가진 Django 애플리케이션에 있는 웹 페이지의 “type”입니다. 우리가 만드는 poll 어플리케이션에서 다음과 같은 네개의 view 를 만들어 보겠습니다. 질문 “색인” 페이지 – 최근의 질문들을 표시합니다. 질문 “세부” 페이지 – 질문 내용과, 투표할 수 있는 서식을 표시합니다. 질문 “결과” 페이지 – 특정 질문에 대한 결과를 표시합니다 투표 기능 – 특정 질문에 대해 특정 선택을 할 수 있는 투표 기능을 제공합니다. 뷰 추가하기 polls/view.py에 뷰를 추가해 봅시다. def detail(request, question_id): return HttpResponse("You're looking at question %s." %..
-
Part 2-2 관리자 페이지Django 2022. 6. 29. 17:08
관리자 생성하기 장고는 모델 즉 데이터베이스를 UI가 존재하는 화면으로 관리할 수 있게끔 admin을 바로 만들어줍니다. py manage.py createsuperuser를 입력하여 관리 사이트에 로그인 할 수 있는 사용자를 생성해 봅시다. (Password 작성시 보이지 않아도 당황하지 마세요! 실제로는 입력되고 있습니다!) 개발 서버 시작 py manage.py runserver 명령어를 입력하여 서버를 동작합니다. 관리자 사이트에 들어가기 이제 웹 브라우저를 열고 로컬 도메인의 “/admin/”으로 이동합니다. (ex. http://127.0.0.1:8000/admin/) 생성한 관리자 계정으로 로그인해주세요! 관리 사이트에서 poll app 을 변경가능하도록 만들기 그런데 사이트를 살펴보면 우리..
-
part 2-1 모델Django 2022. 6. 29. 15:18
데이터베이스 설치 웹을 만들 때 데이터를 저장하기 위해서는 데이터베이스가 필요합니다. 데이터베이스의 종류는 다양합니다. 실습에서는 경량 데이터베이스인 sqlite3을 사용합니다. 이후 조금 더 성능이 좋은 데이터베이스를 사용하고 싶다면 settings.py에 소스 몇줄만 고치면 데이터베이스 종류를 변경할 수 있습니다. INSTALLED_APPS는 현재 Django 인스턴스에서 활성화된 모든 Django 어플리케이션들의 이름이 담겨 있습니다. ' ~ ' 이러한 앱들을 사용하겠다라고 장고에 얘기하는것입니다 ! 앱을 추가하면 추가로 설치한 앱을 작성해 주어야 사용할 수 있습니다 ! (위 앱들은 일반적인 경우에 사용하기 편리하도록 Django와 함께 딸려오는 기본앱들입니다.) 이러한 기본 어플리케이션들 중 몇몇..
-
part 1. 요청과 응답Django 2022. 6. 28. 13:48
시작하기 전에 먼저 코드를 작성할 수 있는 에디터 툴을 설치해 줍니다. https://code.visualstudio.com/Download Download Visual Studio Code - Mac, Linux, Windows Visual Studio Code is free and available on your favorite platform - Linux, macOS, and Windows. Download Visual Studio Code to experience a redefined code editor, optimized for building and debugging modern web and cloud applications. code.visualstudio.com 이 튜토리얼을 통해, ..