在1:m关联上续订重复的foreignKey

时间:2017-04-10 15:40:23

标签: mysql database foreign-keys associations sequelize.js

我有一个包含公告和用户的数据库。

用户可以创建许多公告,而公告只由一个用户创建。

使用sequelize定义这个我做了这个:

公告模式:

'use strict';
module.exports = function (sequelize, DataTypes) {
    var users = sequelize.define('users', {
        id: {
            type: DataTypes.INTEGER,
            primaryKey: true
        },
        username: {
          type: DataTypes.STRING,
          unique: true
        },
        email: {
          type: DataTypes.STRING,
          unique: true,
          validate: {
            isEmail: true
          }
        }
    }, {
        timestamps: true,
        classMethods: {
            associate: function (models) {
                /**
                 * a user has many announcements
                 */
                users.hasMany(models.announcements, {
                    as: 'Announcements',
                    foreingKey: {
                        name: 'id',
                        allowNull: false
                    }
                });
            }
        }
    });
    return users;
};

用户模型:

sklearn.linear_model.LogisticRegression

运行应用程序后,我在公告数据库中找到重复的用户标识(OwnerId和userId)。它必须只有一个' OwnerId'。

那么我做错了什么呢?

1 个答案:

答案 0 :(得分:0)

我发现了问题:我拼错了“foreignKey”并将其写成“foreingKey”。现在一切都好吗