Flask框架之一对多关系模型定义

案例代码:

#定义模型
class BookInfo(db.Model):
    #设置表名
    __tablename__ = ‘bookinfo‘
    #设置为主键之后,自动自增长
    id = db.Column(db.Integer,primary_key=True)
    name = db.Column(db.String(20),unique=True,nullable=False)
    pub_date = db.Column(db.Date,nullable=True)
    readcount = db.Column(db.Integer,default=1)
    commentcount = db.Column(db.Integer,default=1)
    is_delete = db.Column(db.Boolean,default=False)

    # 定义一对多字段
    peopleinfo_set = db.relationship(‘PeopleInfo‘,      # 模型类名
                                     backref=‘book‘,    # 多关系模型中隐藏的对象字段
                                     lazy=‘dynamic‘)    # 是否惰性查询

    def __repr__(self):
        return self.name

class PeopleInfo(db.Model):
    __tablename__ = ‘peopleinfo‘
    id = db.Column(db.Integer,primary_key=True)
    name = db.Column(db.String(20),unique=True)
    password = db.Column(db.String(20),nullable=False)
    email = db.Column(db.String(50),nullable=True)
    #设置外键
    book_id = db.Column(db.Integer,db.ForeignKey(‘bookinfo.id‘))

    def __repr__(self):
        return self.name

代码解析:

只需要在一关系模型类中定义一个管理字段即可实现一对多关系模型的定义。

多关系类名小写_set = db.relationship(‘多关系模型名‘,backref=‘关系对象‘,lazy=‘dynamic‘)

原文地址:https://www.cnblogs.com/chao666/p/12424972.html

时间: 2024-10-09 11:14:57

Flask框架之一对多关系模型定义的相关文章

Flask框架之多对多关系模型类的定义

案例代码: table_relation = db.Table('stu_tea_rel', # 关系表明 db.Column('stu_id', db.Integer, db.ForeignKey('student.id')), # 多关系表的主键 db.Column('tea_id', db.Integer, db.ForeignKey('teacher.id'))) # 多关系表的主键 class Student(db.Model): id = db.Column(db.Integer,

flask中常见的关系模型定义

flask中常见的关系模型定义一对多应用场景:角色与所属于该角色的用户(角色表与多用户表) [Python] 纯文本查看 复制代码 ? 01 02 03 04 05 06 07 08 09 10 class Role(db.Model):     __tablename__ = 'roles'     id = db.Column(db.Integer, primary_key=True)     name = db.Column(db.String(64), unique=True)     

Hibernate框架学习之一(关系模型)

Hibernate是一种orm技术框架,处于面向对象和数据库的中间层次 一.概述 1. 作为面向对象的思考者,希望的最理想的情况是在使用对象的时候,最少的关注数据库 2. 对象与关系型数据库在领域概念上却又有着天然的不一致 (1)领域概念应对成对象是需要有行为的 (2) 对象的概念在数据的表中不是完全一样的 下面就总结一下对象的关系在数据库中的样子,同时引出Hibernate的几种表达关系注解的使用方式 @OneToOne @OneToMany @ManyToOne @ManyToMany 二.

Python Flask框架——全栈开发(知了课堂)

章节1:Flask视图和URL 课时1[虚拟环境]为什么需要虚拟环境06:28 课时2[虚拟环境]virtualenv创建虚拟环境13:55 课时3[虚拟环境]virtualenvwrapper使用16:42 课时4[Flask预热]课程介绍45:34 课时5[Flask预热]Flask课程准备工作11:30 课时6[Flask预热]URL组成部分详解14:02 课时7[Flask预热]web服务器+应用服务器+web应用框架14:16 课时8[Flask URL]第一个flask程序详解24:

Flask框架的使用

我们在搭建一下接口测试平台或者管理一些脚本的时候,通常希望有一个web页面来维护,今天就介绍一款使用python编写的轻量级Web应用框架,自带开发用服务器和debugger,简单易用. Flask是依赖jinja2模板和Werkzeug WSGI服务的一个微型框架,对于Werkzeug本质是Socket服务端,其用于接收http请求并对请求进行预处理,然后触发Flask框架,开发人员基于Flask框架提供的功能对请求进行相应的处理,并返回给用户,如果要返回给用户复杂的内容时,需要借助jinja

Flask 框架构建

Flask 框架构建,目标构建成Django类似的结构 一. 先看看构建后的效果 # 第一次初始化 python manage.py db init # 生成数据库版本 python manage.py db migrate # 将定义的模型更新到数据库 python manage.py db upgrade 二. 看下范例代码 1.根目录下的manage.py文件: 2. electron/__init__.py  一些初始化工作放在这里了,用到了一些插件flask-sqlalchemy,fl

Flask框架的学习与实战(一):开发环境搭建

Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2.很多功能的实现都参考了django框架.由于项目需要,在此记录下学习的过程及心得. 工欲善其事,必先利其器.就从搭建一套flask开发环境开始flask之旅吧. 一.平台说明 操作系统:window 7  64bit  数据库:mysql5.6  python:v2.7  开发集成软件:PyCharm5.0 二.开发环境搭建 1.安装flask框架包 1

Entity Framework 6 Recipes 2nd Edition(11-4)译 -> 在”模型定义”函数里调用另一个”模型定义”函数

11-4.在”模型定义”函数里调用另一个”模型定义”函数 问题 想要用一个”模型定义”函数去实现另一个”模型定义”函数 解决方案 假设我们已有一个公司合伙人关系连同它们的结构模型,如Figure 11-4所示: Figure 11-4. A model representing the associate types in a company together with the reporting association 在我们的虚拟的公司里, , team members被一个team lea

数据库精华知识点总结(1)—数据库的三层模式和二级映像,E-R(实体联系图)图,关系模型

Data base: 长期存储在计算机内,有组织的,可共享的大量数据集合.基本特征:永久存储,可共享,有一定的物理和逻辑结构. Data base manage system(DBMS):用户和os之间的一层数据管理软件. 1.提供数据操纵语言DML对数据库增删改查 2.数据库的建立和维护 3.提供数据控制功能:在数据库建立,运行和维护时,DBMS管理数据的安全性,完整性,并发控制和故障的系统恢复,(也就是数据库的事务管理和运行管理) 4.与其它软件系统通信 Data base system(D