오도원입니다.

건강과 행복을 위하여

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폴더에 따로 모아두면 된다.

반응형

'PNU DSC > Solution Challenge' 카테고리의 다른 글

Flask 07. 회원관리 - View (bootstrap)  (0) 2020.03.09
Flask 06. 회원가입 - Model  (0) 2020.03.09
Flask 04. FLask-SQLAlcemy  (0) 2020.03.08
Flask 03. MVC  (0) 2020.03.08
Flask 02. 플라스크 구조  (0) 2020.03.08