Python ORM类以字母“结尾”;s";未正确生成
我正在使用SQLAlchemy并为我的PostgreSQL模型生成ORM类。但令我惊讶的是,以字母“s”结尾的表格引起了这个问题 例如,我有一个如下表Python ORM类以字母“结尾”;s";未正确生成,python,sqlalchemy,sqlacodegen,Python,Sqlalchemy,Sqlacodegen,我正在使用SQLAlchemy并为我的PostgreSQL模型生成ORM类。但令我惊讶的是,以字母“s”结尾的表格引起了这个问题 例如,我有一个如下表 employee_status 为该表生成的ORM类如下所示 Class EmployeeStatu(Base): __tablename__ = "employee_status" col1 = Column(String(32)) 为什么类名中的结尾字母“s”出现在表名中时会丢失?sqlacodegen: 模型类命名逻辑
employee_status
为该表生成的ORM类如下所示
Class EmployeeStatu(Base):
__tablename__ = "employee_status"
col1 = Column(String(32))
为什么类名中的结尾字母“s”出现在表名中时会丢失?sqlacodegen:
模型类命名逻辑
使用“屈折”库将表名(假定为英文)转换为单数形式。然后,在将下一个字母转换为大写时,删除每个下划线。例如,sales\u invoices
变为sales invoices
这似乎已经发生了变化。与此同时,没有什么能阻止您手动更正类名。看起来像是这个bug,但可能是您试图以单数形式生成python类的实用程序的作者。这很可能与表名的复数化有关。检查如何为SQLAlchemy配置多元化。阅读
模型类命名逻辑部分