url_for를 사용하여 Flask 정적 파일에 연결
url_for
Flask에서 폴더의 파일을 참조하는 방법은 무엇입니까? 예를 들어, static
폴더 에 일부 정적 파일이 있으며 그중 일부는 static/bootstrap
.
에서 파일을 제공하려고 static/bootstrap
하면 오류가 발생합니다.
<link rel=stylesheet type=text/css href="{{ url_for('static/bootstrap', filename='bootstrap.min.css') }}">
이것으로 하위 폴더에없는 파일을 참조 할 수 있습니다.
<link rel=stylesheet type=text/css href="{{ url_for('static', filename='bootstrap.min.css') }}">
정적 파일을 참조하는 올바른 방법은 무엇입니까 url_for
? url_for
모든 수준에서 정적 파일에 대한 URL을 생성 하려면 어떻게해야 합니까?
기본적으로 정적 파일에 대한 static
엔드 포인트 가 있습니다. 또한 Flask
응용 프로그램에는 다음 인수가 있습니다.
static_url_path
: 웹에서 정적 파일에 대해 다른 경로를 지정하는 데 사용할 수 있습니다. 기본값은 static_folder
폴더 이름입니다 .
static_folder
:에서 제공되어야하는 정적 파일이있는 폴더입니다 static_url_path
. 기본값은 응용 프로그램의 루트 경로에있는 'static'폴더입니다.
이는 filename
인수가 파일에 대한 상대 경로를 가져와 다음 static_folder
과 결합 된 상대 경로로 변환 함을 의미합니다 static_url_default
.
url_for('static', filename='path/to/file')
파일 경로 static_folder/path/to/file
를에서 URL 경로 로 변환합니다 static_url_default/path/to/file
.
따라서 static/bootstrap
폴더 에서 파일을 가져 오려면 다음 코드를 사용하십시오.
<link rel="stylesheet" type="text/css" href="{{ url_for('static', filename='bootstrap/bootstrap.min.css') }}">
다음으로 변환됩니다 (기본 설정 사용) :
<link rel="stylesheet" type="text/css" href="static/bootstrap/bootstrap.min.css">
또한 url_for
문서를보십시오 .
제 경우에는 nginx 구성 파일에 대한 특별한 지침이 있습니다.
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
nginx는 Flask에 대해 알려지지 않았기 때문에 모든 클라이언트가 '404'를 받았습니다.
누군가에게 도움이되기를 바랍니다.
참고 URL : https://stackoverflow.com/questions/16351826/link-to-flask-static-files-with-url-for
'IT TIP' 카테고리의 다른 글
Sublime Text 2-파일이 새 탭을 열지 않습니까? (0) | 2020.10.18 |
---|---|
Java 8을 사용한 모나드 (0) | 2020.10.18 |
데이터 프레임의 모든 특정 값 바꾸기 (0) | 2020.10.18 |
자바 스크립트로 라디오 버튼 확인 (0) | 2020.10.18 |
map 및 join을 사용하여 반응 구성 요소를 렌더링하는 방법 (0) | 2020.10.18 |