320x100
posixpath.py", line 375, in abspath
path = os.fspath(path)
TypeError: expected str, bytes or os.PathLike object, not list
이런에러가 계속해서 떴다.
앞 부분은 어차피 개인적인 경로라 생략되었지만,
구글링을 해보니 해답은 간단했다.
settings.py에 설정해준
STATIC_ROOT, STATICFILE_DIRS의 경로가 같으면 충돌때문에 이렇게 된다고 한다.
심지어는 내 눈에는 같은경로가 아닌 각각 'static', 'staticfiles' 이렇게 되었던 것으로 기억하는데 이런 타입에러가 나오다니..
결과적으로
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
이렇게 해주니 해결은 되었다.
하지만 Django를 활용하는 사람으로써 저 5개 경로에 대한 부분은 짚고 넘어가야 할것같아서
더욱 알아보았다.
그리고 정리본을 올린다.
# 정적파일(css, JS등을 보관해주고 끌어와주기 위한 경로)
STATICFILES_DIRS
STATIC_URL
STATIC_ROOT
# 정적파일(이미지, 일반적인 업로드 파일들관련 경로)
MEDIA_URL
MEDIA_ROOT
결론적으로 어이없겠지만 명확한 설명이 없는것같다.;
아무튼 저기서 쓰이는 경로중 하나의 요인으로 인해서
html에서 {% static %}으로 끌어와서 사용할때 사용되는 경로지정을 할수있다는 것은 확실한데
최소한에 내 눈에는 몇개의 포스팅을 봐도
그말이 그말같이 보인다.
마치
"이건 과일가게에서 파는 빨간색 과일이예요"
"이건 과일가게에서 파는 조그하고 씨가있는 빨간색 딸기예요"
뭐 이런말만 반복하는것같다;
아무튼 시간을 두고 차차 알아봐야겠다
300x250
'개발일지 > Django' 카테고리의 다른 글
Django - AttributeError at /accounts/profile/edit/ (해결) (0) | 2023.01.18 |
---|---|
Django - TemplateSyntaxError(해결, html태그의 짝이 맞아야한다.) (0) | 2023.01.18 |
Django - URL Reverse와 get_absolute_url()의 관계 (0) | 2023.01.14 |
Django - 장식자(Decorator) - (로그인관련) (1) | 2023.01.14 |
Django - 다인수 vs 다인수 (many to many, 다대다) 해결방법 (0) | 2023.01.10 |