来自 PostgreSQL 错误的环回模型发现

Loopback Model discovery from PostgreSQL error

我目前正在构建一个环回项目,我需要在 PostgreSQL 数据库中发现现有数据来制作我的模型,我已经按照文档中的教程成功创建了模型:https://loopback.io/doc/en/lb3/Discovering-models-from-relational-databases.html#discover-and-save-model-definitions,但是当我对任何模型使用 运行 GET 方法时,我收到一条错误消息

relation "public.acl" does not exist

任何人都可以帮我解决这个问题,在此先感谢。

您已告知 loopback 使用您的数据库进行身份验证。 Loopback 要求 table 来验证每个不存在的请求。这与自动迁移无关。以下是您可以轻松创建所需的 table 的方法。

Loopback automigration script

Create server/create-lb-tables.js file with the following:

var server = require('./server');
var ds = server.dataSources.MYDATABASE;
var lbTables = ['User', 'AccessToken', 'ACL', 'RoleMapping', 'Role'];
ds.automigrate(lbTables, function(er) {
  if (er) throw er;
  console.log('Loopback tables [' + lbTables + '] created in ', ds.adapter.name);
  ds.disconnect();
});

Run the script manually:

$ cd server
$ node create-lb-tables.js

谢谢@Marvin,我通过 运行 ./server/boot/migrateTables.js 中的这个自动更新脚本解决了这个问题:

'use strict';

module.exports = migrateTables;

function migrateTables(server) {
  var storage = server.datasources.db;

  storage.autoupdate();
}