Backand - 使用自己的数据库行 ID 作为主键

Posted

技术标签:

【中文标题】Backand - 使用自己的数据库行 ID 作为主键【英文标题】:Backand - use own db row id as primary key 【发布时间】:2016-10-07 18:39:06 【问题描述】:

是否可以在 backand 对象中指定您自己的行 ID?我想在数据库中形成一对一的关系,我有两个对象:userPrivateData 和 userProfile

我想使用 Backands 自己的内部用户对象的 id 作为两个对象的主键。所以基本上是一个userId。原因:使用 REST api,您可以使用 GET /1/objects/name/id

访问单个项目

由于我不知道行 ID,我想使用另一个唯一标识符作为主键,我知道 - 我的用户 ID。

这可能吗?也许我的概念完全错了,在他们的文档中,他们谈论了很多关于一对多的关系和东西,而不是关于一对一的关系。

【问题讨论】:

【参考方案1】:

我认为您的 JSON 模型看起来像这样。

    [
  
    "name": "items",
    "fields": 
      "name": 
        "type": "string"
      ,
      "description": 
        "type": "text"
      ,
      "user": 
        "object": "users"
      
    
  ,
  
    "name": "users",
    "fields": 
      "items": 
        "collection": "items",
        "via": "user"
      ,
      "allofuserprivatedata": 
        "collection": "userPrivateDataThings",
        "via": "userId"
      ,
      "email": 
        "type": "string"
      ,
      "firstName": 
        "type": "string"
      ,
      "lastName": 
        "type": "string"
      ,
      "userProfile": 
        "object": "userProfile"
      
    
  ,
  
    "name": "userProfile",
    "fields": 
      "userid": 
        "collection": "users",
        "via": "userProfile"
      ,
      "fieldOne": 
        "type": "string"
      ,
      "fieldTwo": 
        "type": "boolean"
      
    
  ,
  
    "name": "userPrivateDataThings",
    "fields": 
      "field1": 
        "type": "string"
      ,
      "field2": 
        "type": "float"
      ,
      "userId": 
        "object": "users"
      
    
  
]

当你想要一对多时使用集合。 当你想要 1 对 1 时使用一个对象。

当您使用 deep:true 对用户执行 GET 时,嵌套关系数据将在响应中返回。

【讨论】:

以上是关于Backand - 使用自己的数据库行 ID 作为主键的主要内容,如果未能解决你的问题,请参考以下文章

backand:用户创建、删除、更新的问题

使用 $http PUT 更新 Backand 上的复杂对象

Backand/Ionic - 如何检索登录用户的数据?

如何从 Backand 上的表中删除多行?

Backand- 使用 facebook 和 google 登录错误

如何使用 Backand 检索当前登录的用户