从PostgreSQL错误发现回送模型

时间:2018-08-14 10:46:09

标签: node.js postgresql loopbackjs loopback

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

  

关系“ public.acl”不存在

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

2 个答案:

答案 0 :(得分:2)

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

'use strict';

module.exports = migrateTables;

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

  storage.autoupdate();
}

答案 1 :(得分:1)

您已告诉回送使用数据库进行身份验证。环回请求一个表来验证每个不存在的请求。这与自动迁移无关。以下是如何轻松创建所需表的方法。

Loopback automigration script

  

使用以下命令创建server / create-lb-tables.js文件:

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();
});
  

手动运行脚本:

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