我想创建一个像树一样的存储结构与我的应用程序一起使用,但无法找到足够的文档如何使用水线属性创建一个树模型。
情况很简单。我确实需要一组文件夹,这些文件夹可以有多级子文件夹,最后是文件。对于这类数据,您通常在mySQL中做的是将parent_id字段添加到模型中,作为模型本身的外键。
如何在sailsjs/waterline模型中使用属性?
我试着做了如下的事情,这产生了相当多的冗余和孤立的数据:
,
attributes: {
name: {
type: 'string'
},
parentFolder: {
model: 'Folder'
},
childFolders: {
model: 'Folder',
via: 'parentItem'
}
}
——什么好主意吗?
顺便说一下,如果这是可能的,比如使用mySQL作为后端。它将如何复制说,mongoDB?
这似乎行得通:
name: {
type: 'string',
maxLength: 255,
required: true
},
parent: {
model: 'folder'
},
childs: {
collection: 'folder',
via: 'parent'
}
我相信副本是通过在浏览器中直接通过GET发布数据而生成的。我通过POST与客户端发布数据,它似乎如预期的那样工作。(至少从我在mySQL中看到的)