inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

작정하고 장고! Django로 Pinterest 따라만들기 : 바닥부터 배포까지

8강 장고 Template의 extends, include 구문과 render 함수의 8분부분 질문드립니다.

269

hyun4025ji

작성한 질문수 5

0

안녕하세요.  지금 강의를 다시본지 3번째인 것 같습니다.

이제 장고가 대충 어떤 느낌인진 알것같으나, 스스로 프로젝트를 처음부터 끝까지 만들라고하면 어떻게 해야할 지 막막해 강의를 3번째로 보게되었습니다.          강의를 듣던 중 8강의 8분정도에서 설명하신 pragmatic의 setting.py의 TEMPLATES에서 DIRS에 os.path.join(BASE_DIR, 'templates')가 구체적으로 어떻게 작동하는지 잘 모르겠습니다.

DIRS에 경로를 입력해주어야 한다라고 말씀하셨는데 보통 이DIRS의 [] 사이에는 무엇을 하기위해 주로 코드를 작성하나요?

os.path.join(BASE_DIR, 'templates')란 코드가 무슨 의미인지, 여기서 BASE_DIR는 무엇인가요? 

'templates'만 적었음에도 accountapp의 view.py에서 base.html을 적으면 연결을 시켜준다고 하셨는데 이 부분이..이해가 되지 않습니다....

python docker django

답변 1

0

Hyong Sok Park

안녕하세요!
질문 확인했습니다.

일단 BASE_DIR 가 무엇인지 확인을 하셔야 할것 같습니다.

이 변수는 settings.py 내부에 선언되어있습니다.

여기서 개략적으로 코드를 보게 되면,
Path(__file__).resolve() 여기까지가 이 settings.py 파일의 경로입니다.

그리고 이후 parent 가 두번이 나오죠?
settings.py 파일의 두번째 부모경로가 이 BASE_DIR 이라는 변수가 가지는 값입니다.

기본적으로 생성되었을때,
프로젝트 최상위 폴더가 BASE_DIR 가 되는거죠.

그리고 나서 

os.path.join(BASE_DIR, 'templates')

코드를 보게 되면,
os 라는 것은 운영체제 관련 python 모듈이고,
os.path 라는 것은 그중에서도 운영체제 내 경로 관련한 모듈이라는 것이고,
os.path.join 이라는 것은 그 중에서도 join, 합치는 메서드라는 것입니다.

무엇을 합치는가?
라고 물었을때, join 메서드 안에 넣은 값들을 모두 합쳐 하나의 운영체제 상 경로로 되돌려주는 메서드입니다.

그렇다면 다시 보겠습니다.

os.path.join(BASE_DIR, 'templates')

이는 최상위 프로젝트 폴더 안에 있는 templates 라는 이름을 가진 폴더를,

템플릿이 들어있는 경로로 인식하겠다고 명시하는 작업입니다.


답변이 도움이 되셨을까요?
궁금증이 해결되지 않으셨다면 계속 질문 남겨주시길 바랍니다.

좋은하루 보내시구요!
감사합니다-

강의에 나왔던 js 파일이 깃허브에 없습니다

1

78

1

모바일 디버깅, 반응형 레이아웃 4분48초 질문

0

56

1

decorator 관련질문입니다.

0

63

1

PasswordChangeView

0

104

2

로그아웃뷰 작동 관련 (2025년 3월)

1

138

1

실행에러질문

0

158

1

@login_required 데코레이터 사용시 리다이렉트는 어디서 참조하여 설정을 하는걸까요?

0

116

1

CacheBackend 관련 에러

0

181

1

21강 CreateView를 통한 회원가입 구현 질문

0

325

1

53강 disallowedhost

0

346

2

502 Bad Gateway

0

474

0

mariadb 접근권한 오류

0

543

1

logout 후 빈 화면으로 이동합니다 ㅠㅠ

0

461

2

로그아웃 후 빈 화면으로 이동

0

333

1

서버 운영 관련 질문 드립니다.(Unable to retirve...)

0

232

1

static/base.css파일을 인식을 못합니다

0

380

1

안녕하세요 19강 디버깅 설정 질문있습니다.

0

291

1

프로필 update편 질문있습니다.

0

380

1

수업질문

0

395

1

COOP error

0

531

1

61강 Dockerfile error

0

597

1

static안에 base.css 에서 정의한 클래스가 적용되지 않습니다.

0

491

1

static 파일 중 jpg 파일만 로드 불가

0

419

1

58강 static 파일 적용 안됨

0

546

1