gpt4 book ai didi

mysql - Sequelize 与别名 "addresses"的关联在用户上不存在

转载 作者:行者123 更新时间:2023-12-03 22:31:54 27 4
gpt4 key购买 nike

我正在做一个关于 Node 、MySQL 和 Sequelize 的教程,一切进展顺利,但有一点我无法摆脱这个错误:“错误:与别名的关联”地址“用户上不存在”有没有人去过那里?
关注我的代码:https://github.com/Akssasori/sequelize2 .我搜索了堆栈并尝试了几件事,但似乎我的 User.associate (connection.models);不被认可
我总是收到这个错误

UnhandledPromiseRejectionWarning: Error: Association with alias "addresses" does not exist on User
但我添加了 User.associate (connection.models);在我的模型上

最佳答案

您的代码中有几个问题:

  • 您为 User 和 Address 模型创建了单独的 Sequelize 连接,这就是它们不知道彼此关联的原因。
    从两个模型模块中删除连接创建以及 checkcon称呼。
  • 您不应该在模型模块中初始化模型。那些够了init来电database.js因为您需要一个 Sequelize 连接实例来初始化它们(在 database.js 中创建)。
  • 您应该导入 database.js在启动服务器以创建 Sequelize 连接并注册模型及其关联时的某个地方。
    为简单起见,您可以将其导入 server.js :

  • const express = require('express');
    const routes = require(__dirname +'/routes');
    // the below line was added
    require(__dirname +'/database')

    关于mysql - Sequelize 与别名 "addresses"的关联在用户上不存在,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66166992/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com