flask-sqlalchemy 关系表简单操作

from flask import Flaskfrom flask.ext.sqlalchemy import SQLAlchemyfrom flask.ext.migrate import Migrate, MigrateCommandfrom flask.ext.script import Manager

app = Flask(__name__)app.config[‘SQLALCHEMY_DATABASE_URI‘] = ‘sqlite:///test.db‘db = SQLAlchemy(app)

migrate = Migrate(app, db)

manager = Manager(app)manager.add_command(‘db‘, MigrateCommand)

class Post(db.Model):    id = db.Column(db.Integer, primary_key=True)    name = db.Column(db.String(80))

    category_id = db.Column(db.Integer, db.ForeignKey(‘category.id‘))    category = db.relationship(‘Category‘,                               backref=db.backref(‘posts‘, lazy=‘dynamic‘))

class Category(db.Model):    id = db.Column(db.Integer, primary_key=True)    password = db.Column(db.String(50))

@manager.commanddef run():    app.debug = True    app.run()

if __name__ == ‘__main__‘:    manager.run()

# test# c1 = Category(password = ‘pass1‘)# p1 = Post(name=‘name1‘,category=c1)# db.session.add(p1)# db.session.commit()## p1 = db.session.query(Category).one()# print p1.id == 1# print p1.posts.one().name == ‘name1‘# print p1.posts.all()[0].name ==‘name1‘
时间: 2024-08-25 07:59:23

flask-sqlalchemy 关系表简单操作的相关文章

SQL Server 的数据表简单操作

--创建数据表--[use 要创建数据表的数据库名称go]create table 要创建的表名(字段名 数据类型[长度] [null | not null] [primary key],... ... ... ... ,字段名 数据类型[长度] [null | not null]) 例:use 商品管理数据库gocreate table 客户信息表(客户编号 nchar(8) not null,客户姓名 nvarchar(5) not null,联系电话 nvarchar(11) not nu

SQL笔记----在一个关系表中操作列

使用alter关键字,可以为一个表添加新的列. 比如: 给Persons的表中添加一列,名字为Birthday,类型是date. ALTER TABLE Persons ADD Birthday date 使用alter的格式为: ALTER TABLE table_name ADD column_name datatype 在一个表中删除一列的操作为: ALTER TABLE table_name DROP COLUMN column_name 改变列的属性: ALTER TABLE tabl

flask SQLAlchemy中一对多的关系实现

SQLAlchemy是Python中比较优秀的orm框架,在SQLAlchemy中定义了多种数据库表的对应关系, 其中一对多是一种比较常见的关系.利用flask sqlalchemy实现一对多的关系如下: 1. 建立数据库的模型 在本次试验中建立三个表: user, phone ,atttr.user 和phone, phone 和atttr均为一对多的关系.实现如下: #!/usr/bin/env python # -*- coding: utf-8 -*- from flask import

ORACLE的安装与网页版创建表空间的简单操作以及PLsql的简单操作

1.oracle的安装: 安装简单易学,在这里不做解释.下载看装包后耐心等待,注意安装目录不要有中文字符,尽量按照指定目录进行安装.安装完成后会占用有大约5g的内存. 如果要卸载oracle,需要用其自带的卸载工具进行卸载[universal installer],然后删除注册表项,删除环境变量,删除目录并且重新启动计算机. 2.在网页版进行创建表空间: 进入网页版: 在电脑的服务中我们可以看到一共有7个oracle的服务项目,其中只有三个是正在启动中.这三项中,只有当OracleDBConso

JS的简单操作和表单以及事件

HTML:主要用于往页面上放置所需要的控件. CSS:主要用来控制页面以及上面控件的样式. JS:主要用来控制页面上的特效以及数据交互. JS也分为顺序,条件(IF()... ELSE()),循环(FOR())三种语句,与C#基本一致. JS定义变量统一用var,定义数组不固定长度和类型,类似C#中的集合. JS的简单操作: DOM操作: 一.window: 1.window.onload 页面打开完再执行后面的操作 2.window.open(1,2,3,4) - 打开新页面, 1 - 打开页

Python中使用SQLAlchemy连接Mysql数据库2(多表连接操作)

http://blog.csdn.net/u011573853/article/details/51355113 在上面我们已经说了单表的一些操作,现在我们说一下多表的连接 >>> from sqlalchemy import distinct >>> from sqlalchemy.orm import aliased >>> Astu = aliased(Stu,'Astu') >>> Acla = aliased(Cla,'Ac

Python与数据库[2] -> 关系对象映射/ORM -> 利用 sqlalchemy 实现关系表查询功能

利用 sqlalchemy 实现关系表查询功能 下面的例子将完成一个通过关系表进行查询的功能,示例中的数据表均在MySQL中建立,建立过程可以使用 SQL 命令或编写 Python 适配器完成. 示例中用到的表主要有3张,一张personInfo个人信息表,一张account_store账号信息表,以及一张person_account_rel的个人信息与账号关系表. 示例中将会通过已知的人物年龄和id通过个人信息表查出个人姓名(仅为参考示例,请忽略怪异的查找逻辑 :) ),随后根据关系表得到的人

SQL Server 的表数据简单操作

--表数据操作----添加表数据----向现有表添加数据--[use 要操作数据表的数据库名称go]insert [into] 数据表 [(字段名1,字段名2,字段名3, ...)] values(值1,值2,值3, ...) 例:use 商品管理数据库goinsert 客户信息表(客户姓名,客户编号,联系电话)values('刘培群','021','13927112594') --把查询到的表数据生成(添加到)一张新数据表--[use 要操作数据表的数据库名称go]select 字段名列表 i

sqlalchemy——多表操作

一对多:一对一 # one -- many class Students(Base): __tablename__ = "students" sid = Column(Integer, primary_key=True) name = Column(String(30)) age = Column(Integer) tid = Column(Integer, ForeignKey("teachers.tid")) # 声明字段值受到另一个表的字段值得约束,注意是&l