Flask框架 - 11 Django与Flask的区别

Django与Flask区别:

1. jiaji2和Django的Templates模板引擎相比,jiaja2语法更简单
比如: loop.index 和 forloop.counter
       loop.revindex 和 forloop.revcounter
jiaja2中没有ifequal
2. 耦合
Django: 大而全,但是耦合性高。Auth,Permission,admin基本没用
        开发快,符合MVC模式

Flask: 微框架,很小巧。需要哪些功能,自己装。
        需要熟悉MVC模式

3. 模型

3.1 模型定义
1. 模型中不定义数据库的表名:
    在django中默认表名为:'应用app名_模型名小写'
    在flask中默认的表名为:'模型名小写'

2. 自增id字段:
    在django中默认会创建自增的主键id
    在flask中需要自己写自增的主键id:
        id = db.Column(db.Integer, primary_key=True, autoincrement=True)

3. 查询所有数据的结果,all()方法
    在django中查询的结果为QuerySet
    在Flask中查询结果为List

4. 查询满足条件的数据的结果,filter(), filter_by()方法
    在django中查询的结果为QuerySet
    在Flask中查询结果为BaseQuery objects
3.2 模型数据查询

Django:

一对多:

  模型1: u 字段为 FOREIGN_KEY,关联到模型2
    模型1.u = u对象
    模型1.u_id = u对象.id
  模型1查找模型2的数据
    模型2对象=模型1对象.u
    模型1对象=模型2对象.模型1_set.all()

一对一:

  模型1查找模型2的数据
    模型2对象=模型1对象.u
    模型1对象=模型2对象.模型1.all()

Flask:

一对多:

    模型1: u字段为FOREIGN KEY,关联到模型2
    模型2: yy字段,定义relationship字段, backref=‘uu’

    模型1查找模型2:
        模型2对象 = 模型1对象.uu
        模型1对象 = 模型2对象.yy
  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值