【问题标题】:Sequelize doesn't insert values into newly added columnsSequelize 不会将值插入到新添加的列中
【发布时间】:2019-05-05 16:49:24
【问题描述】:

我有Users 表,我通过新的迁移文件向表中添加了两个新列emailfirstName

sequelize db:create --name add_columns_to_users

add_columns_to_users.js:

'use strict';
module.exports = {
  up: (queryInterface, Sequelize) => {

    return [
      queryInterface.addColumn(
        'Users',
        'email',
        {
          type: Sequelize.TEXT,
        }
      ),
      queryInterface.addColumn(
        'Users',
        'firstName',
        {
          type: Sequelize.TEXT,
        }
      )
    ];
  },

  down: (queryInterface, Sequelize) => {
  }
};

用户/schema.graphql:

type User {
  id: ID!
  username: String
  email: String
  firstName: String
}

type Query {
  users(id: ID): [User]
}

input CreateUserInput {
  username: String!
  email: String!
  firstName: String!
}

type Mutation {
  createUser (input: CreateUserInput!): User
}

我的用户突变中有以下内容:

Mutation: {
    createUser(root, {input}, context){
    models.User.create(input).then( user => {
        console.log(user);
    });
  }
}

这是我要发送的输入:

{ 
  'username': profile.username,
  'email': profile.email,
  'firstName': profile.firstName
}

在我的日志中,我看到值没有被插入到新列 emailfirstName 中,而对于像“用户名”等旧列没有问题。

INSERT INTO "Users" ("id","username","createdAt","updatedAt") VALUES 
(DEFAULT,'Sxxxxh RxxxF','2018-12-04 08:34:11.974 +00:00','2018-12-04 08:34:11.974 +00:00') 
RETURNING *;

【问题讨论】:

    标签: node.js sequelize.js graphql graphql-js sequelize-cli


    【解决方案1】:

    我太傻了!我忘记将新列添加到 models/user.js

    models/user.js:

    'use strict';
    
    module.exports = (sequelize, DataTypes) => {
      const User = sequelize.define('User', {
        username: DataTypes.TEXT,
        password: DataTypes.TEXT,
        token: DataTypes.TEXT,
        abbr: DataTypes.TEXT,
        deleted: DataTypes.BOOLEAN,
        email: DataTypes.TEXT,
        firstName: DataTypes.TEXT
      }, {});
    
      User.associate = function(models) {
      };
      return User;
    };
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-06-10
      • 1970-01-01
      • 2020-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多