环回4 - ER_BAD_FIELD_ERROR

问题描述 投票:0回答:1

我有一个奇怪的错误:

    Unhandled error in GET /managers: 
    500 Error: ER_BAD_FIELD_ERROR: Unknown column 'role_id' in 'field list'
    at Query.Sequence._packetToError
    (/Users/xxxx/node_modules/mysql/lib/protocol/sequences/Sequence.js:47:14)

我添加了一个字段role_id,它具有表角色的外键。

我试过了:

  1. 删除所有表并重新创建它们(我正在使用Liquibase)
  2. 删除数据库
  3. 创建具有不同名称的数据库

我不知道还能做什么。

我的数据源是:

{
  "name": "db",
  "connector": "mysql",
  "url": "",
  "host": "localhost",
  "port": 3306,
  "user": "root",
  "password": "xxx",
  "database": "xxx.dev"
}

我的模特:

从'@ loopback / repository'导入{Entity,model,property,belongsTo};从'./role.model'导入{Role};

@model({
  name: 'role',
  settings: {strict: false},
})
export class Manager extends Entity {
  @property({
    type: 'number',
    id: true,
    required: true,
  })
  id: number;

  @belongsTo(() => Role, {
    name: 'role',
  })
  role_id: number;

  @property({
    type: 'string',
    required: true,
  })
  first_name: string;

  @property({
    type: 'string',
    required: true,
  })
  last_name: string;

  [props: string]: any;

  constructor(data?: Partial<Manager>) {
    super(data);
  }
}
typescript loopback v4l2loopback angular-loopback
1个回答
0
投票

问题是......

@model({
  name: 'role',
  settings: {strict: false},
})

模型的名称应该是'manager'not'role'

© www.soinside.com 2019 - 2024. All rights reserved.