장고에 기능을 계속 추가하다보면 뷰 파일(views.py)에 함수가 계속 늘어나 불편함을 느끼게 될 것이다.
뷰 파일에 함수가 많아지면 관리하기 힘들어지기 때문에 이쯤에서 뭔가 개선이 필요함을 느끼게 된다.
boards\views 폴더를 만듦
해당 폴더를 만든후

| 파일명 | 기능 | 함수 |
|---|---|---|
| base_views.py | 기본관리 | index,detail |
| post_views.py | 게시글관리 | post_create,post_modify,post_delete |
| comment_views.py | 댓글관리 | comment_create,comment_modify,comment_delete |
위의 3개의 함수에 분리하여 함수를 만듦
boards\urls.py 을 다음과 같이 만들어 보자
from django.contrib import admin
from django.urls import path
from .views import base_views,comment_views,post_views
app_name = 'boards'
urlpatterns = [
# base_views.py
path("", base_views.index,name='index'), #boards/ 끝에 슬러시 주의 할것
path('<int:post_id>/', base_views.detail, name='detail'),
#comment_views.py
path('comment/create/<int:post_id>/', comment_views.comment_create, name='reply_create'),
path('comment/modify/<int:comment_id>/', comment_views.comment_modify, name='comment_modify'),
path('comment/delete/<int:comment_id>/', comment_views.comment_delete, name='comment_delete'),
#post_views
path('post/create/', post_views.post_create, name='post_create'),
path('post/modify/<int:post_id>/', post_views.post_modify, name='post_modify'),
path('post/delete/<int:post_id>/', post_views.post_delete, name='post_delete'),
]
URL 매핑시 views.index 를 base_views.index 와 같이 해당 모듈명이 표시되도록 바꾸었다. 모듈명이 있기 때문에 이제 누가 보더라도 어떤 뷰 파일의 함수인지 명확하게 인지할 수 있다.