node.js - 如何将 AWS Cognito 子 UUID 添加到 Sequelize 表作为主键?

标签 node.js sequelize.js amazon-cognito sequelize-cli

我在尝试将我的 Cognito 用户子 UUID 添加到我的 Sequelize 表时遇到了很多问题。我已经看到 Sequelize 自动生成自己的 UUID 而不是自定义 UUID 的解决方案?我正在从我的客户端推送 AWS 子 UUID 作为 express 中的有效负载。
模型文件:

function User(sequelize) {
  const User = sequelize.define(
    "User",
    {
      id: {
        type: DataTypes.UUID,
        primaryKey: true,
        allowNull: false,
      },
客户端
      console.log('result: ', user);
      console.log('result: ', user.userSub, typeof user.userSub);
      console.log('uuid result: ', uuidParse(user.userSub), typeof uuidParse(user.userSub));

      let payload = {
        id: user.userSub,
        username: username,
        email: email,
        birthday: birthdate
      }

      const request = {
        url: `/api/user`,
        method: 'POST',
        payload,
      };

      query(request);
错误:
"name":"SequelizeValidationError","errors":[{"message":"User.id cannot be null","type":"notNull Violation","path":"id","value":null,"origin":"CORE"
谢谢

最佳答案

刚刚想通了,似乎我忘记在模型的 createUser 方法中的参数中添加 id 。一切正常

 User.createUser = async function ({ **id**, username, email, bio, birthday, gender }) {
    return await this.create({
      **id**,
      username,
      email,
      bio,
      birthday,
      gender
    });
  };

关于node.js - 如何将 AWS Cognito 子 UUID 添加到 Sequelize 表作为主键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66485131/

相关文章:

node.js - 在 sequelize 中加入同一张表并在 excel 中打印

amazon-web-services - 我可以通过 Amazon Cognito 创建临时用户吗?

ios - AWSCognitoIdentityMultiFactorAuthentication 永远不会返回

javascript - 如何从方法内部获取js方法名称

javascript - 无法遍历依赖图 : Cannot find module './crypto_auth' sodium-universal

node.js - URL 中的 pump.io 端口

amazon-web-services - AWS Cognito 用户池应用程序客户端中的设置意味着什么

javascript - 在 jQuery 中,如何通过 http 获取 gzip 文件?

javascript - 为什么我在运行迁移时出错,我尝试将typedatas文本更改为JSONB(PostgreSql+sequelize)

mysql - Sequelize 模型中两列之间的乘法