본문 바로가기

파이썬/Django

Django url 연결

참고 : opentutorials.org/module/4034

 

Django

Django 2019-05-21 14:19:01 | 공개

opentutorials.org

 

프로젝트와 동일한 이름을 가진 앱 디렉토리로 가보면 urls.py 파일이 있다.

여기에 주석처리 되어있는 부분을 보면 url path를 연결하는 3가지 방법에 대해 나와있다.

하지만 지금은 생활코딩의 장고 튜토리얼을 따라가고 있기 때문에 우선 첫번째 방법을 따라가 본다.

project - project와 동일한 이름을 가진 앱(dir) - urls.py - 6~8line

1. 앱으로 부터 views를 import 해와라.

2. `path('', views.home, name='home')` 같은 문법으로 URL을 추가해라.

 

하지만, 이 작업을 하기 전에 선행해야 할 작업들이 있다.

우선, 앱을 만들고, 우리가 볼 HTML파일을 작성하고, views.py에 연결, 마지막으로 urls.py에 연결해야한다.

 

순서 : 

1. 앱을 만든다.

manage.py startapp [앱이름]

 

2. 앱을 등록한다.

project - project와 동일한 이름을 가진 앱(dir) - settings - INSTALLED_APPS에 앱 추가

 

3. 앱 dir에 templates dir을 만든다.

앱 dir에 우클릭해서 만들자(이름 정확하게 : templates)

 

4. templates 밑에 HTML을 작성한다.

마찬가지로 우클릭해서 만들자(ex. index.html)

 

5. 앱 - views.py에서 HTML을 연결한다.

빨간부분 : 추가한 내용

6. urls.py에 views.py를 연결 후 페이지를 연결한다.

import blogapp.views :

위에서는 from blogapp import views 로 하라고 했지만, 앱을 여러개 추가하는 경우 오히려 불편할 수도 있겠다는 생각이 들었다.

path('', blogapp.views.index, name='index'),

path : 기본 문법인듯

'' : url 경로 localhost:8000/ 다음에 들어가는 부분 / localhost:8000/admin 을 치면 관리자 페이지로 갈 수 있다.

blogapp.views.index : 경로

   blogapp.views : 내가 import 한 부분

   index : blogapp.views에 만들어 놓은 함수(순서 4번 참조)

name='index' : 장고템플릿에 사용하기 위한 이름

   장고에서는 HTML에서 장고 템플릿 언어라는 것을 사용한다.

   {% url '[name]' %}의 형태로 html에 넘길 수 있다.

   이 경우 <a href="{% url 'index' %} ">index페이지로</a> 이런식으로 사용이 가능하다.

 

 

 

 

'파이썬 > Django' 카테고리의 다른 글

Django 첫 화면 띄우기(Community Edition)  (0) 2020.12.23