Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python ORM类以字母“结尾”;s";未正确生成_Python_Sqlalchemy_Sqlacodegen - Fatal编程技术网

Python 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: 模型类命名逻辑

我正在使用SQLAlchemy并为我的PostgreSQL模型生成ORM类。但令我惊讶的是,以字母“s”结尾的表格引起了这个问题

例如,我有一个如下表

employee_status
为该表生成的ORM类如下所示

Class EmployeeStatu(Base):
    __tablename__ = "employee_status"
    col1 = Column(String(32))
为什么类名中的结尾字母“s”出现在表名中时会丢失?

sqlacodegen:

模型类命名逻辑

使用“屈折”库将表名(假定为英文)转换为单数形式。然后,在将下一个字母转换为大写时,删除每个下划线。例如,
sales\u invoices
变为
sales invoices


这似乎已经发生了变化。与此同时,没有什么能阻止您手动更正类名。

看起来像是这个bug,但可能是您试图以单数形式生成python类的实用程序的作者。这很可能与表名的复数化有关。检查如何为SQLAlchemy配置多元化。阅读
模型类命名逻辑部分