Flask 웹어플리케이션에서 원시 SQL 을 이용하여 RUID 작업을 하는 것은 매우 번거롭고 귀찮은 일이다. SQLAlchemy 를 이용하면 이러한 작업들을 보다 쉽게 처리할 수 있다. 파일명 : 17_sqlalchemy.py from flask import Flask, request, flash, url_for, redirect, render_template from flask_sqlalchemy import SQLAlchemy app = Flask(__name__) # 데이터베이스 파일의 절대경로 입력 app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:////home/pi/project/students.sqlite3' app.config['SECRET_KEY'] ..
Flask 는 SQLite 를 내장지원한다. 우선 임시 프로그램을 이용하여 데이터베이스와 connection 을 맺고 테이블을 하나 생성한다. 파일명 : sqlite_temp.py import sqlite3 conn = sqlite3.connect('database.db') print ('Opened database successfully') conn.execute('CREATE TABLE STUDENTS (NAME TEXT, ADDR TEXT, CITY TEXT, PIN TEXT)') print ('Table created successfully') conn.close() 프로그램이 정상 종료 되었다면 'database.db' 라는 파일이 생성되어 있을 것이다. 파일명 : 16_sqlite3.py fr..
Flask-WTF 를 사용하여 파이썬 스크립트에서 양식 필드를 정의하고 HTML 템플릿을 사용하여 렌더링 할 수 있다. WTF 필드에 유효성 검사를 적용할 수도 있다. 먼저 Flask-WTF 와 email_validator 패키지를 설치한다. pip install flask-WTF pip install email_validator 파일명 : forms.py from flask_wtf import Form from wtforms import TextField, IntegerField, TextAreaField, SubmitField, RadioField, SelectField from wtforms import validators, ValidationError class ContactForm(Form) :..
Flask 는 Flask-Mail 을 이용하여 간단한 인터페이스를 통해 이메일을 발송할 수 있다. 우선 Flask-Mail 익스텐션을 설치해야 한다. pip install Flask-Mail 파일명 : 14_mail.py from flask import Flask from flask_mail import Mail, Message app = Flask(__name__) mail = Mail(app) app.config['MAIL_SERVER'] = 'smtp.gmail.com' app.config['MAIL_PORT'] = 465 app.config['MAIL_USERNAME'] = '본인의계정@gmail.com' app.config['MAIL_PASSWORD'] = '비밀번호' app.config['MA..