dot notation post.html {% load static %} {{ post.title }} {{ post.excerpt }} 1. post.hmtl 은 어디선가 include 된다2. include 될때 post 라는 dictionary 를 넘겨받는다 .3. {% url %} 과 {% static %} 태그 안에서도 post 객체에 필드에 접근이 가능하다 . Django 2024.05.15
다이나믹 라우팅 이전 게시글에서 특정 GET 요청에 대한 라우터를 만들어 봤다 .하지만 모든 라우터를 하나하나 만들기엔 내 시간이 부족하다 이번에는 다이나믹 라우팅을 써보자! challenges/urls.py 를 다음과 같이 수정하자from django.urls import pathfrom . import viewsurlpatterns = [ path("", views.monthly_challenge)] 는 pathVariable 이라고 생각하면 된다. challenges/views.py 를 다음과 같이 수정하자from django.shortcuts import renderfrom django.http import HttpResponse, HttpResponseNotFound# Create your views he.. Django 2024.05.10
CSS 파일 가져오기 현재 폴더 구조 index.html{% extends "base.html" %}{% load static %}{% block css_files %} {% endblock %}{% block page_title %}All challenges{% endblock %}{% block content%}{% include "challenges/include/header.html" with active_page="index"%} {% for month in months %} {{ month|title}} {% endfor %} {% endblock %}1. {% load static %} 키워드 추가 href 속성으로 static 파일을 임포트 할 수.. Django 2024.05.09
커스텀 404 페이지 from django.template.loader import render_to_stringdef monthly_challenge(request, month): try: challenge_text = monthly_challenges[month] return render(request, "challenges/challenge.html",{ "text": challenge_text, "month_name": month.capitalize(), }) except: response_data = render_to_string("404.html") return HttpResponseNotFound(response_data) #raise Http404("Inva.. Django 2024.05.06
파이참 장고 HTML 자동 완성 설정하기 Settings => Languages & Frameworks => Django 에서 Enable Django Support 설정이 켜져있고, 아래 설정들이 올바르게 들어있으면 각종 장고 편의 기능들이 제공된다Django project root : 프로젝트 루트settings : 파이참에서 사용할 settings 경로 manage script : manage.py 파일 위치장고 라는 폴더안에서 startproject 명령어로 monthly_challenges 프로젝트를 만들었음 .settings 파일과 manage.py 를 파일 탐색기 버튼을 클릭하여 직접 클릭 -> 추가 하면됨 Django 2024.05.05
템플릿 서빙 방법 및 문법 현재 폴더 구조 장고/monthly_challenges/monthly_challenges/setting.py 수정 ....INSTALLED_APPS = [ 'challenges', #여기 추가 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles',]....TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS':.. Django 2024.05.05
reverse 장고의 reverse() 함수는 URL 패턴의 이름을 이용하여 URL을 역으로 찾는 기능을 제공한다. 이를 통해 뷰에서 특정 URL로 리디렉션을 할 때나 템플릿에서 특정 URL로 링크를 생성할 때 유용하게 사용됩니다. 아래의 코드를 보자.from django.urls import pathfrom . import viewsurlpatterns = [ path('', views.index), path('', views.monthly_challenge_by_number), path('', views.monthly_challenge, name="month-challenge")]path 의 name 파라미터값을 줄 경우, 이 값을 통해 URL 을 역으로 찾을 수 있다. redirect_path = rev.. Django 2024.05.02
router 생성 아래의 명령어로 monthly_challenges 장고 프로젝트를 만들어주자django-admin startproject monthly_challenges monthly_challenges 로 이동해서 challenges 어플리케이션을 생성해 주자 폴더 구조는 다음과 같다 montlry_challenges 서브 폴더는 장고 프레임 워크가 알아서 생성해준 폴더이다 . 장고 route 의 흐름은 다음과 같다 . 1. 요청이 들어온다 2. monthly_challenges 의 urls.py 에서 해당하는 route 를 찾고 포워딩(?) 비슷한 작업을한다.3. 포워딩된 urls.py 에서 views 로직을 실행한다. 보기만 해선 무슨 소리인지 잘모르겠다..직접 만들어보자! 1. monthly_challen.. Django 2024.04.30
파이썬 가상환경 만들기 C:\project 폴더 아래에 가상 환경을 만들어보자 C:\project>python -m venv exampleC:\project>cd exampleC:\project\example>Scripts\activate.bat(example) C:\project\example> 프롬프트 앞을 보면 (example)과 같이 가상 환경의 이름이 표시된다.이 상태에서 pip로 패키지를 설치하면 C:\project\example\Lib\site-packages 안에 패키지가 저장됩니다 가상 환경에 설치된 패키지는 목록을 저장해 두었다가 나중에 다시 설치할 수 있다. 다음과 같이 pip freeze로 패키지 목록과 버전 정보를 requirements.txt 파일에 저장한다(git 등으로 버전 관리를 할 때 저장소.. Django 2024.04.30
장고 장고 프레임 워크 다운로드python -m pip install django 원하는 폴더를 생성하고 장고 프로젝트 시작해 보기 나는 장고 라는 폴더를 만들고 그곳으로 이동 해보겠다. 아래의 명령어를 입력하여 장고 프로젝트 생성하기! django-admin startproject mypag 다음과 같은 파일들이 자동으로 생성된다. 각 파일들이 뭘 의미하는 지는 일단 모르겠고... 작동하는지 확인하고 싶기때문에 아래의 명령어로 서버 Onmypage 안으로 이동 한 후 실행해야함python manage.py runserver 이제 8000포트로 이동해서 서버가 켜짐을 확인해보자 Django 2024.04.30