June 04, 2020 ( last updated : June 04, 2020 )
Python
Django
Web
https://github.com/sneakstarberry/
장고 세션에 따라 자신이 만든 html파일을 메인화면으로 바꿔보기로 하였다.
django
라는 이름으로 C드라이브에 새폴더를 생성해 줍니다. 그리고 해당 폴더를 폴더 선택을 눌러서 선택합니다. 이때 폴더:에 선택한 폴더이름이 나와 있어야합니다.python -m venv myvenv
-m
은 어떤 것을 만들어 주겠다는 것입니다.venv
는 virtual environment의 축약어로 가상환경을 의미합니다.myvenv
는 저희가 생성하는 가상환경의 이름을 의미합니다. 사실상 원하는 이름을 붙이셔도 됩니다.이 모든 것을 합치면 myvenv
라는 가상환경을 생성해 주겠다는 명령어가 됩니다.
source myvenv/scripts/activate
(myvenv)
가 생겼다면 가상환경이 실행이 된 것 입니다.git clone https://github.com/SYULION8TH/django_1st.git
pip install django
를 통해 장고를 다운 받을 수도 있지만 실습 환경을 동일하게 하기 위해서 만든 requirements.txt를 통해서 pip install
을 진행 하고자 합니다.dir
혹은 ls
명령어를 입력합니다.dir
django_1st
와 myvenv
가 나옵니다. 현재 경로에 있는 폴더를 의미합니다.requirements.txt
가 있는 django_1st
로 경로를 이동하도록 하겠습니다.cd django_1st/
cd
는 change directory
의 약자입니다. 빨간색으로 표시된 부분을 보면 django
에서 django_1st
로 경로가 변경이 된 것을 볼 수 있습니다.dir
or ls
명령어를 통해서 제대로 이동이 되었는지 확인해 봅니다.requirements.txt
가 있는 것을 볼 수 있습니다.pip install -r requirements.txt
cd blog
dir
명령어를 통해 확인을 해줍니다.blog
와 manage.py
가 있다면 제대로 따라오셨습니다.python manage.py runserver
http://127.0.0.1:8000/
를 ctrl+Click
을 통해서 페이지를 열어 줍니다.blog
라는 프로젝트 폴더만 있지만 앱을 생성해 주어야합니다. 다음 명령어를 입력해 봅니다.python manage.py startapp posts
startapp
은 앱을 만든다는 명령어입니다.posts
는 앱의 이름입니다. 굳이 posts
가 아니어도 됩니다.posts
폴더가 생성됩니다.blog
폴더 안에 settings.py
를 눌러줍니다....
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
...
'posts'
를 추가 시켜 줍니다....
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'posts',
]
...
코드를 작성한 후에는
Ctrl+S
를 눌러서 저장을 해줍니다.
html
파일 추가하기posts
폴더 안에 templates
폴더를 생성합니다. 이는 장고에서 정해진 경로로 templates
라는 폴더 이름을 지켜줘야 합니다. 저희는 여기에 현재 앱이름과 같은 posts
라는 폴더를 templates
폴더 안에 만들어줍니다. 그러면 아래 사진과 같이 될 것 입니다.index.html
을 만들어준 경로에 복사 붙여넣기 해주도록 한다.views.py
파일 코드 작성하기posts
폴더 아래 views.py
를 눌러서 열어줍니다.views.py
내의 코드를 다음과 같이 바꾸어 준다.def home(request):
return render(request, "posts/index.html")
코드를 작성한 후에는
Ctrl+S
를 눌러서 저장을 해줍니다.
urls.py
를 변경하여 라우팅을 해줍니다.라우팅이란? 여기서는 경로를 배정을 해주는 것입니다. 사용자가 어떤 경로를 요청하느냐에 따라서 다른 페이지를 전달 할 수 있게 해줍니다.
예시
https://comic.naver.com/index.nhn
이와 같은 경로를 보았을 때 웹툰 페이지를index.nhn
로 경로 배정을 했다는 것을 알 수 있습니다.
blog
폴더 안에 있는 urls.py
를 눌러주어서 코드를 봅니다.urls.py
파일의 16번째 줄에 다음과 같은 코드가 있을 것 입니다....
from django.contrib import admin
from django.urls import path
urlpatterns = [
path('admin/', admin.site.urls),
]
...
from django.contrib import admin
from django.urls import path
import posts.views # 추가된 코드
urlpatterns = [
path('admin/', admin.site.urls),
path('', posts.views.home, name="home"), # 추가된 코드
]
python manage.py runserver
Originally published June 04, 2020
Latest update June 04, 2020
Related posts :