javascript - 我想在 Loopback 中为此 JSON 数据创建一个模型

标签 javascript node.js collections loopbackjs loopback

 "US Virgin Islands": [
"Charlotte Amalie",
"Christiansted",
"Frederiksted",
"Kingshill",
"St John Island"
],

我有这个 JSON 文件。我想按原样保存数据。所以国家名称和它拥有的所有城市。我创建了一个名为地址的集合,但我不知道如何正确设置属性。我使用 MongoDB 作为数据库。我想创建 json 模型。

 "name": "address",
  "base": "PersistedModel",

  "idInjection": true,
"options": {
"validateUpsert": true
},
"properties": {
 "country": {
   "type": "object",
   "required": true
}
},

最佳答案

如果您想在地址模型中使用相关模型,则需要使用关系。我建议使用 Loopback cli 来完成此操作。另外,检查relations环回文档中的章节以获取有关关系的更多信息。

假设您有国家/地区模型,地址模型将定义为:

{
   "name":"address",
   "base":"PersistedModel",
   "idInjection":true,
   "options":{
      "validateUpsert":true
   },
   "relation": {
      "country": {
         "type": "hasOne",
         "model": "country"
         "foreignKey": ""
      }
   }
}

此外,您需要在地址模型中创建一个belongsTo关系:

{
   "name":"country",
   "base":"PersistedModel",
   "idInjection":true,
   "options":{
      "validateUpsert":true
   },
   "properties": { ... }
   "relation": {
      "address": {
         "type": "belongsTo",
         "model": "address"
         "foreignKey": ""
      }
   }
}

它将自动在您的地址模型中创建一个countryId字段。然后,如果您想使用整个国家/地区模型实例加载地址,而不仅仅是 countryId,则需要调用如下内容:

Address.find({where: {id: someId}, include: 'country'})

关于javascript - 我想在 Loopback 中为此 JSON 数据创建一个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53281358/

相关文章:

javascript - 检查邀请时如下

java - 能够在不引用父类的情况下实例化静态内部类

java - 如何计算列表中自定义数据类型的值?

javascript - 使用 Danf 执行命令?

node.js - $.getJSON 出现 404 错误,其中 url 和 [object%20Object] 错误,这是怎么发生的?

c# - 是否可以获取对象的属性和关联属性?

php - 从 PHP 设置 JavaScript 变量

javascript - 在 Titanium 中,如何从 TableViewRow 内部获取数据?

javascript - 将 MySQL 数据库表值导出到 HTML 文件

javascript - JQuery:单击时更改动态创建的 <li> 元素的类