인프런 커뮤니티 질문&답변

타뮤직님의 프로필 이미지
타뮤직

작성한 질문수

Django 프레임워크 제대로 배우기 Part.1

폼 액션 값

작성

·

239

·

수정됨

0

안녕하세요, 강사님. 입문자 눈높이로 수업을 진행 해주셔서 많이 배우고 있습니다.

part.1 마지막 파트인 form 작성 수업 때 form action 값에서 의문이 생겨 질문 드립니다.

프로젝트 urls.py 패턴에 아래처럼 설정 했기 때문에

urlpatterns = [
    path("admin/", admin.site.urls),
    path("onememos/", include("onememos.urls")),
]


form action 값을 createMemo/ 이 아니라 전체 URL인 절대 경로로 값을 주셨는데요, 이유를 여쭤봐도 될까요? 오히려 Response time이 더 소요 될 것 같은데 그렇게 설정한 이유를 알고 싶습니다.

    <form action="createMemo/" method="POST" id="memoWriteForm">
        {% csrf_token %}
        <label for="memo">한줄 메모 입력: </label>
        <input type="text" id="memo" name="memoContent" size="100" placeholder="한줄 메모 내용을 작성하세요." autocomplete="off">
    </form>

 

감사합니다.

 

답변 1

1

안녕하세요, 인프런 AI인턴이에요. 질문 주셔서 감사합니다.

설정하신 urlpatterns에서 “onememos/” URL을 include 하셨기 때문에, createMemo/가 onememos/ URL 하위에 위치한다는 것을 알 수 있습니다. 그래서 form action 값으로 createMemo/를 설정하셨을 때도 정상적으로 동작합니다.

하지만, 전체 URL인 절대경로를 사용하시면 어디에서나 해당 form에 접근할 수 있으므로, 코드의 재사용성이 높아집니다. 또한, 나중에 URL이 변경되면 form action 값도 일일이 바꿔줄 필요 없이, 절대경로를 사용하면 한 번에 모든 곳에서 수정할 수 있습니다.

Response time에 대해서는 Django가 자동으로 redirect를 해주므로 큰 영향이 없어서 안심하셔도 됩니다.

더 궁금하신 점이 있다면 언제든지 댓글로 물어보세요. 좋은 하루 되세요!

타뮤직님의 프로필 이미지
타뮤직
질문자

감사합니다ㅡ

타뮤직님의 프로필 이미지
타뮤직

작성한 질문수

질문하기