如何使用环回实现多语言模型

How to implement multi language models using loopback

我想构建一个 API 具有 strongloop 环回的模型,其中包括具有多个语言字符串的模型。 例如。以多种语言命名的产品。

我喜欢存储这样的对象

{
  "price": 10
  "title": {
    "en": "englishTitle",
    "de": "germanTitle"
  }
}

在环回中定义这样的模型的最佳方法是什么?

谢谢!

多语言标题使用相关模型。因此,您掌握模型,例如,Product 具有使用 hasMany 关系的相关模型 Title。您可以查询特定产品所需的语言名称。这是可能的示例之一。

型号Product

{
  "name": "Product",
  "base": "PersistedModel",
  "idInjection": true,
  "properties": {
    "price": {
      "type": "number"
    },
    "defaultTitle": {
      "type": "string"
    }
  },
  "validations": [],
  "relations": {
    "titles": {
      "type": "hasMany",
      "model": "Title",
      "foreignKey": ""
    }
  },
  "acls": [],
  "methods": {}
}

型号Title

{
  "name": "Title",
  "base": "PersistedModel",
  "idInjection": true,
  "properties": {
    "language": {
      "type": "string"
    },
    "title": {
      "type": "string"
    }
  },
  "validations": [],
  "relations": {
    "product": {
      "type": "belongsTo",
      "model": "Product",
      "foreignKey": ""
    }
  },
  "acls": [],
  "methods": {}
}

然后您可以查询 Product 包括相关 Title 并使用所需语言的过滤。 defaultTitle当然是可选的。