【发布时间】:2018-03-14 00:45:57
【问题描述】:
我是 Datastore 的新手,我正在尝试创建一个简单的应用来跟踪图书借阅情况。
我希望数据库架构如下:
books:
book_id
name:
borrowing:
timestamp:
user_id
firstname
email
users:
name:
borrowed:
timestamp:
book_id
我正在使用控制台来配置数据库。
我定义了两种:Books 和 User
业务逻辑:
- n 用户可以借阅 1 本书。
- 1 个用户可以借 n 本书
基本上,当用户借书时,我希望出现以下两个插入:
- 一个新的借阅条目被附加到 Book 类型的书籍实体中,当前时间戳作为键,user_id、名字和电子邮件作为属性
- 一个新借来的条目被追加到ty User的用户实体,当前时间戳为key,book_id为property
如何使用 Datastore 实现这一点(管理嵌套列表子项)?通过嵌入式实体?家长参考?
这是我所期望的一个例子:
{
"books": {
"book1": {
"name": "book number 1",
"borrowing": {
"1234567890": {
"user_id": "user1",
"firstname": "john",
"email": "john@example.com"
},
"2234567890": {
"user_id": "user2",
"firstname": "robin",
"email": "robin@example.com"
}
}
}
...
},
"users": {
"user1": {
"firstname": "robin",
"email": "robin@example.com",
"borrowed": {
"1234567890": {
"book_id": "book1"
},
"3247829398": {
"book_id": "book99"
}
}
},
...
}
}
【问题讨论】: