Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/457.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
Javascript 为什么要继续使用小写返回字段名_Javascript_Node.js_Postgresql_Orm_Sequelize.js - Fatal编程技术网

Javascript 为什么要继续使用小写返回字段名

Javascript 为什么要继续使用小写返回字段名,javascript,node.js,postgresql,orm,sequelize.js,Javascript,Node.js,Postgresql,Orm,Sequelize.js,我已经用camelCase字段名定义了我的模型。但是,当我运行findOne或findAll时,查询返回的数据总是小写,与模型不匹配。我试着通过启用日志记录来检查查询,查询似乎很好,它仍然像在模型中一样选择字段名(camelcase)。有人能帮我解决这个问题吗 注意:我使用的是PostgreSQL 这是我的模型: const reportSchema = { reportId: { type: DataTypes.UUID, defaultValue: Sequelize.U

我已经用camelCase字段名定义了我的模型。但是,当我运行
findOne
findAll
时,查询返回的数据总是小写,与模型不匹配。我试着通过启用日志记录来检查查询,查询似乎很好,它仍然像在模型中一样选择字段名(camelcase)。有人能帮我解决这个问题吗

注意:我使用的是PostgreSQL

这是我的模型:

const reportSchema = {
  reportId: {
    type: DataTypes.UUID,
    defaultValue: Sequelize.UUIDV4,
    primaryKey: true,
    allowNull: false
  },
  reportName: {
    type: DataTypes.STRING,
    allowNull: false
  },
  reportCategory: {
    type: DataTypes.STRING,
    allowNull: false
  }
以下是我的连接配置:

new Sequelize(databaseConfig.dbName, databaseConfig.dbUsername, databaseConfig.dbPassword, {
  host: databaseConfig.dbHost,
  port: databaseConfig.dbPort,
  dialect: 'postgres',
  quoteIdentifiers: false,
  query: {
    raw: true
  }
  // logging: false
});
注意:我认为问题可能在于连接配置中的
quoteIdentifier
选项。但是如果没有设置为false,我就无法访问我在PascalCase中创建的表。如果我将其设置为true,它将在查询中用双引号括起字段名,我想这在Postgres for camelcase中是无效的


您的代码在哪里?谢谢您的快速回复。你想看什么代码?模型定义、连接配置或findOne查询?是,模型和对连接设置配置的任何覆盖。您的表列名也是小写的吗?还包括SQL表定义。已更新。请看一看默认情况下,Postgres将所有标识符名称折叠为小写(与指定大写的SQL标准相反)。这有效地使名称用例具有激励性;由于“myData”、“myData”、“myData”都折叠在同一个值“myData”中。您可以通过将指定的大小写放在双引号(“)中来强制Postgres保留其大小写。但是,您必须始终使用双引号,因为未加引号的值与带引号的值不匹配:MyData与“MyData”不同。