[Flask] 외부소스 읽기

Posted by 백창
2016. 5. 31. 09:33 개발/Flask
반응형

# 개요


 Flask 개발 중 css와 js파일을 로드하기 위해 평소처럼 resource/js .. css 등의 디렉토리를 만들고 아래와 같이


<script type="text/javascript" src="./resource/js/jquery.js>


js 파일을 읽어왔다.


하지만 현실은.. js 파일을 찾을 수 없다는 에러메시지만 받을 수 있었다.


Flask에서 css나 js파일을 읽어 올 때 'url_for' 을 이용하여 지정하면 편리하게 읽어 올 수 있다.



# 사용법


서버동작이 구현되어 있는 run.py 파일을 기준으로 static 폴더를 생성하여 참조할 소스들을 static폴더에 넣는다.


run.py  - static         - js

                                 - css

             - templates


그리고 아래와 같이 사용하면 정상적으로 읽어 올 수 있게 된다.


 <link type="text/css" rel="stylesheet" href="{{url_for('static', filename='css/style.css')}}/>



# 비고


 o url_for 함수의 여러가지 유용한 사용법이 있는듯한데 일단 그건 나중에 알아봐야겠다..

 o Flask에서 {{ }}를 사용하면 파이썬의 함수나 변수를 사용할 수 있다.

반응형

'개발 > Flask' 카테고리의 다른 글

[Flask] 설치  (0) 2016.05.26

[Flask] 설치

Posted by 백창
2016. 5. 26. 16:15 개발/Flask
반응형

# 개요


 4월이 되며 든 생각이 스크립트 언어를 공부해야겠다는것이었다. 어떤 언어를 공부할까 고민하다가 함께 발전할 수 있는 Python 을 해보기로 하고 간단한 웹서버를 구축하기 위해 FLASK를 수동으로 설치해보았다.


# flask란?


 flask는 Python 용 micro Framework이다. 다른 라이브러리들에는 존재하는 기능들을 제공하지는 않지만 그런 기능들을 가질 수 있는 확장성은 제공하고 있다.

 간단하게 생각하면 내가 필요한것들을 가져다 쓰면되겠다.


# 설치

 

 pip 명령어를 사용하면 간단하게 설치 할 수 있지만, flask를 설치할 서버가 인터넷이 안되기 때문에 수동으로 설치하였다.


 먼저, 다음 URL에 접속하여 flask 소스를 다운받아서 설치해보자.



 소스를 받고 압축을 해제하면 여러 파일들이 있는데 그 중 setup.py라는 파일을 이용해서 수동으로 설치할 수 있다.


 # python setup.py install


 설치가 잘 되나요? 인터넷이 안되는 환경에서는 이 방법만으로는 설치가 어렵다.


 그렇다면 어떻게 해야할까?,,,


 Flask는 Werkzeug, jinja2 등 몇몇 패키지에 의존성을 가진다. 이 패키지들이 깔려있지않다면 flask를 설치할 수 가 없다.


 다음 URL에 접속하여 의존성을 가지는 패키지들을 다운받아 먼저 설치하자.





 Flask를 설치했던 방법과 동일한 방법을 사용하여 위 패키지들을 설치하고 다시한번 Flask를 설치하면 잘 될 것이다.



# 테스트


다음 코드를 작성하여 Flask가 잘 설치되었고 동작하는지 테스트 해보자.


1
2
3
4
5
6
7
8
9
from flask import Flask
app = Flask(__name__)
 
@app.route("/")
def hello():
    return "Hello World!"
 
if __name__ == "__main__":
    app.run()
cs


$ python hello.py


를 실행하면 로컬 환경에서 127.0.0.1:5000 을 통해 결과를 확인 할 수 있다.


같은 네트워크에 public IP로 주고 싶다면


app.run() 대신 app.run(host='0.0.0.0')을 입력해주면 된다.


# 출처


http://flask-docs-kr.readthedocs.io/ko/latest/quickstart.html

https://spoqa.github.io/2013/02/20/python-development-environment.html


반응형

'개발 > Flask' 카테고리의 다른 글

[Flask] 외부소스 읽기  (0) 2016.05.31