Loopbackjs 环回更新模型从用户模型错误扩展

Loopbackjs 环回更新模型从用户模型错误扩展,loopbackjs,loopback,Loopbackjs,Loopback,我创建了一个以用户为基础的艺术家模型。我试图通过环回资源管理器更新艺术家模型,但出现错误: “消息”:“验证错误:Artist实例无效。详细信息:password 不能为空(值:未定义);电子邮件不能为空(值: 未定义)。” 我已经注册了一个示例信息,我在MongoDB的艺术家数据库中有它。我不知道为什么我只想更新现有数据时需要在电子邮件和密码字段中添加一些内容 这是我的艺术家: { "name": "Artist", "base": "User", "idInjection":

我创建了一个以用户为基础的艺术家模型。我试图通过环回资源管理器更新艺术家模型,但出现错误:

“消息”:“验证错误:
Artist
实例无效。详细信息:
password
不能为空(值:未定义);
电子邮件
不能为空(值: 未定义)。”

我已经注册了一个示例信息,我在MongoDB的艺术家数据库中有它。我不知道为什么我只想更新现有数据时需要在电子邮件和密码字段中添加一些内容

这是我的艺术家:

{
  "name": "Artist",
  "base": "User",
  "idInjection": false,
  "options": {
    "validateUpsert": true,
    "strictObjectIDCoercion": true
  },
  "properties": {
    "firstName": {
      "type": "string"
    },
    "middleName": {
      "type": "string"
    },
    "lastName": {
      "type": "string"
    },
    "telephoneNumber": {
      "type": "string"
    },
    "country": {
      "type": "string"
    },
    "city": {
      "type": "string"
    },
    "genre": {
      "type": "string"
    },
    "description": {
      "type": "string"
    },
    "pricing": {
      "type": "string"
    },
    "profilePicture": {
      "type": "string"
    }
  },
  "validations": [],
  "acls": [
    {
      "accessType": "EXECUTE",
      "principalType": "ROLE",
      "principalId": "$authenticated",
      "permission": "ALLOW",
      "property": "create"
    },
    {
      "accessType": "EXECUTE",
      "principalType": "ROLE",
      "principalId": "$owner",
      "permission": "ALLOW",
      "property": [
        "updateAttributes",
        "deleteById"
      ]
    },
    {
      "accessType": "READ",
      "principalType": "ROLE",
      "principalId": "$everyone",
      "permission": "ALLOW"
    }
  ],

  "methods": {}
}

我是不是遗漏了什么

由于您的实体继承自用户模型,因此在使用POSTPUT方法时,需要设置“密码”和“电子邮件”属性(因此创建/更新整个对象),因为它们用于用户登录

如果您只想在不传递全部数据的情况下更新艺术家,请使用补丁。(那么“密码”和“电子邮件”将不再是强制性的)


如果不需要使用环回的登录系统,请不要从用户模型继承实体。(或者你这样做还有其他原因吗?

嗨!非常感谢。是的,我需要环回登录系统以及授权,所以我继承了用户模型。好吧,那么,使用补丁而不是PUT对你有帮助吗?嗨,是的,它有!