Welcome toVigges Developer Community-Open, Learning,Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
677 views
in Technique[技术] by (71.8m points)

egg-sequelize的查询返回json的问题

我用findAll查询了分类的数据

const list = await model.findAll()

打印list如下:

[
  Category {
    dataValues: {
      id: 1,
      name: 'js',
      parentId: null,
      createdAt: '2020-03-15 12:35:49',
      updatedAt: '2020-03-15 12:35:49',
      deletedAt: null,
      children: [Array]
    },
    _previousDataValues: {
      id: 1,
      name: 'js',
      parentId: null,
      createdAt: '2020-03-15 12:35:49',
      updatedAt: '2020-03-15 12:35:49',
      deletedAt: null,
      children: [Array]
    },
    _changed: {},
    _modelOptions: {
      timestamps: true,
      validate: {},
      freezeTableName: false,
      underscored: false,
      paranoid: true,
      rejectOnEmpty: false,
      whereCollection: [Object],
      schema: null,
      schemaDelimiter: '',
      defaultScope: {},
      scopes: {},
      indexes: [],
      name: [Object],
      omitNull: false,
      sequelize: [Sequelize],
      hooks: {}
    },
    _options: {
      isNewRecord: false,
      _schema: null,
      _schemaDelimiter: '',
      include: [Array],
      includeNames: [Array],
      includeMap: [Object],
      includeValidated: true,
      attributes: [Array],
      raw: true
    },
    isNewRecord: false,
    children: [ [Category] ]
  },
  Category {
    dataValues: {
      id: 3,
      name: 'css',
      parentId: null,
      createdAt: '2020-06-12 01:00:39',
      updatedAt: '2020-06-12 01:00:39',
      deletedAt: null,
      children: []
    },
    _previousDataValues: {
      id: 3,
      name: 'css',
      parentId: null,
      createdAt: '2020-06-12 01:00:39',
      updatedAt: '2020-06-12 01:00:39',
      deletedAt: null,
      children: []
    },
    _changed: {},
    _modelOptions: {
      timestamps: true,
      validate: {},
      freezeTableName: false,
      underscored: false,
      paranoid: true,
      rejectOnEmpty: false,
      whereCollection: [Object],
      schema: null,
      schemaDelimiter: '',
      defaultScope: {},
      scopes: {},
      indexes: [],
      name: [Object],
      omitNull: false,
      sequelize: [Sequelize],
      hooks: {}
    },
    _options: {
      isNewRecord: false,
      _schema: null,
      _schemaDelimiter: '',
      include: [Array],
      includeNames: [Array],
      includeMap: [Object],
      includeValidated: true,
      attributes: [Array],
      raw: true
    },
    isNewRecord: false,
    children: []
  }
]

然后我把list给ctx.body返回

ctx.body = list

打印的response中,list是正确的json,而不是上面的对象,json如下:

[

{

"id":?1,

"name":?"js",

"parentId":?null,

"createdAt":?"2020-03-15 12:35:49",

"updatedAt":?"2020-03-15 12:35:49",

"deletedAt":?null,

"children":?[

{

"id":?2,

"name":?"ts",

"parentId":?1,

"createdAt":?"2020-06-12 01:00:29",

"updatedAt":?"2020-06-12 01:00:29",

"deletedAt":?null,

"children":?[],

"articles":?[]

}

]

},

{

"id":?3,

"name":?"css",

"parentId":?null,

"createdAt":?"2020-06-12 01:00:39",

"updatedAt":?"2020-06-12 01:00:39",

"deletedAt":?null,

"children":?[]

}

]

为什么会不一样呢?还是sequelize对这个封装对象做了什么处理?


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to Vigges Developer Community for programmer and developer-Open, Learning and Share
...