热门标签 | HotTags
当前位置:  开发笔记 > 数据库 > 正文

flask中使用SQLAlchemy进行辅助开发的代码

在Web.py,Django,Flask,Tornado里,自带的ORM功能比较缺乏,推荐大家使用SQLAlchemy来辅助开发
安装方法

1)、apt-ge安装

代码如下:


sudo apt-get install Flask-SQLAlchemy

2)、下载安装包进行安装

代码如下:


# 安装后可直接在py中使用
import flask
from flask.ext.sqlalchemy import SQLAlchemy

app = flask.Flask(__name__)
# - Settings里配置了SqlAlchemy的数据库地址
# sqlite ex: "sqlite:///dbname.db"
app.config.from_object("Settings")
db = SQLAlchemy(app)
db.init_app(app)
# - create_all() 调用时将会创建所有继承db.Model的模版
# Model ex: 见 Class AdminInfo
db.create_all()

class AdminInfo(db.Model):
id = db.Column(db.Integer, primary_key = True)
name = db.Column(db.String(16))
password = db.Column(db.String(32))
kidname = db.Column(db.String(16))
diy_show = db.Column(db.Text)

def __init__(self, name, password, kidname, diy_show):
self.name = name
self.password = password
self.kidname = kidname
self.diy_show = diy_show

def __repr__(self):
return ""%(self.name, '*'*len(self.password))

这样就是就可以在render 模版时使用SQLAlchemy了。

代码如下:


# 对AdminInfo进行操作
ai = AdminInfo("gaoyiping", "gaoyiping", u"我叫高一平", u"大家好,我叫高一平,你叫什么?我们交个朋友啊。")
# 这样就已经实例了一个SQL Data
# 对db进行插入
db.session.add(ai)
# 对db commit
db.session.commit()

# 如果进行查询
AdminInfo.query.all()
# >>> [, ]
AdminInfo.query.get(1) # 查询刚插入的第一条记录
# >>>
AdminInfo.query.filter_by(name = "gaoyiping")
# >>>

推荐阅读
author-avatar
吉樺雄_910
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有