PNU DSC/Solution Challenge
Flask 05. Jinja2
오도원공육사
2020. 3. 9. 14:59
반응형
MVC에서 V인 view, template을 담당하는 라이브러리이다. 이것은 플라스크에서 이미 내부적으로 사용하고 있기 때문에 간단하게만 알면 된다.
import os
from flask import Flask
from flask_sqlalchemy import SQLAlchemy
from flask import render_template # flask프레임워크에 있는 render_template모듈을 가져온다.
basedir = os.path.abspath(os.path.dirname(__file__))
dbfile = os.path.join(basedir, 'db.sqlite')
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///' + dbfile
app.config['SQLALCHEMY_COMMIT_ON_TEARDOWN'] = True
app.config['SQLALCHEMY_TRACK_MODIFICATIONS'] = False
db = SQLAlchemy(app)
db.create_all()
@app.route('/')
def hello():
return render_template('hello.html')
달라진 점은
return 'Hello World!'
코드가
return render_template('hello.html')
로 바뀌었다.
사실 app.py파일은 MVC에서 C인 controller를 담당한다. 그런데 V를 담당하는 코드인 return 'Hello World!'를 따로 templates폴더로 분리한 것이다. 이로써 기능분리가 더 확실히 된것이다.
이제 view를 담당하는 html파일들은 templates폴더에 따로 모아두면 된다.
반응형