У меня есть письменная спецификация для значительной базы данных, которая будет размещаться в postgresql и использоваться как источник данных для реализации api backloop nodejs api. Проблема заключается в том, что спецификация написана никоим образом не анализируется машиной напрямую, поэтому мне придется самостоятельно создавать модели и структуру. Я только недавно начал работать с loopback, и раньше я использовал django. Из того, что я видел, я думаю, что метод, который подходит мне, - это dataSource.createModel
, но этот способ не создает файлы json
в папке common/model
, поэтому он не будет работать на api.Loopback создает структуру базы данных, которая также создает модели json
Есть ли способ создать модели как в базе данных, так и в реестре api? это мой код до сих пор :(
var path = require('path');
var app = require(path.resolve(__dirname, '../server'));
// var ds = require('../data-sources/db')('oracle');
var ds = app.dataSources.floatDB;
var User = ds.createModel('User', {
email: { type: String, limit: 150, index: true },
password: { type: String, limit: 50 },
birthDate: Date,
registrationDate: {type: Date, default: function() { return new Date }},
activated: { type: Boolean, default: false }
});
ds.automigrate(function() {
ds.discoverModelProperties('CUSTOMER_TEST', function (err, props) {
console.log(props);
});
});
PS мои модели будут иметь внешние ключи и отношения как этого
{
"name": "Order",
"base": "PersistedModel",
"properties": {
"description": {
"type": "string"
},
"total": {
"type": "number"
}
},
"validations": [],
"relations": {
"customer": {
"type": "belongsTo",
"model": "Customer",
"foreignKey": ""
}
},
"acls": [],
"methods": []
}
Можете ли вы сделать этот вопрос понятным? Вы уже создали схему в своей базе данных и хотите, чтобы код генерировал конечные точки API? Или вы создаете свои модели в коде и хотите, чтобы модели JSON и схема базы данных были созданы? – conradj