如何在不手动创建类/模型的情况下,基于预先存在的表生成类/模型。在我的例子中,这只在没有任何关系的平板上使用。 假设我的postgres数据库中有下表:
id | brand_name | cloth_type
1 nike t-shirt
2 adidas t-shirt
3 nike skirt
如果不自己编写模型,如何获得第一行(id 1)的对象/实例? 有没有办法创建一个动态生成的抽象类,或者根据表添加属性?你知道吗
我发现了这一点,但无法真正掌握如何实施它。 https://docs.sqlalchemy.org/en/13/orm/extensions/automap.html
我想实现的可能是这样的(粗略代码)
engine = db_connect(db_config_section) # creates engine based on config
file
Base.metadata.create_all(engine)
Session = sessionmaker(bind=engine)
abstract_class = ... # somehow generate abstract class
obj = session.query(abstract_class).get(1)
感谢您可能的答复。你知道吗
编辑: 在链接解决方案中,仍然有一个用固定类名和表名定义的类。这不是我要找的。 我想要的代码应该独立于一个表。例如,用于cloth tabel的代码(如我的示例中所示)也应适用于下表(car):
id | brand_name | car_type | doors
1 bmw suv 4
2 ford pickup 2
3 fiat cuv 2
好吧,我解决了。正如IljaEveriläsad所说,解决方案主要由他链接的stackoverflow post给出。我不得不稍微调整一下。我理解得有点慢,抱歉。 以下是我的解决方案:
相关问题 更多 >
编程相关推荐