SQLAlchemy两种表定义各有什么利弊,更推荐用哪一种?

第一种,使用Table

clipboard.png

第二种,定义类

clipboard.png

各有什么利弊呢?
在实际项目中,更推荐使用哪一种?

阅读 4.1k
1 个回答

第一种:
你的user、address,仅仅是于数据库的表做了关联。但是如果你想以OO的思想对其进行操作,那么还需设计对应的类,并用mapper(from sqlalchemy.orm) 对其做关联映射,然后再在该类中实现一些需要的操作,这个并非必须。
所以实际可以理解为 类 —— 映射 —— 数据库表。
当然这种情况下,允许你直接对映射进行操作而不一定需要类的实现。

第二种:
类声明的同时已关联到对应的数据库表、字段。
所以实际可以理解为 类&映射 —— 数据库表。

请参考
SQLAlchemy in Flask —— http://flask.pocoo.org/docs/0.10/patterns/sqlalchemy/

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏