我在mongodb中使用sails js。
这是我的EventTags模型:
EventTags.js
module.exports = {
schema: true,
attributes: {
eventList: {
collection: 'Events',
via:'tagList'
},
event_tag_name:{ type:'string',
required:true,
unique:true
}
}
};
这是我的事件模型:
Events.js
module.exports = {
schema: true,
attributes: {
tagList: {
collection: 'EventTags',
via:'eventList'
},
title:{ type:'string',required: true},
blurb:{ type:'string'},
description:{ type:'string'},
venue: {type: 'string',required: true},
}
};
创建了EventTags,这是我的json响应。
{
"status": 109,
"status_message": "success..!!",
"event_tag_info": {
"event_tag_name": "travel1",
"createdAt": "2015-07-15T06:01:09.050Z",
"updatedAt": "2015-07-15T06:01:09.050Z",
"id": "55a5f725f7d707ba4f32ac74"
}
}
接下来,我复制了EventTags ID,即“ id”:“ 55a5f725f7d707ba4f32ac74”。
事件模型。
这是事件模型发布数据。
{
"tagList":"55a5f725f7d707ba4f32ac74",
"title": "Snow City : Bengaluru",
"blurb": "testtesttesttesttesttest",
"description": "Toronto has been chosene city",
"venue": "palace ground"
}
当我点击http://localhost:1337/events
我得到空的tagList数组。
[
{
tagList: [ ],
title: "Snow City ",
blurb: "some data",
description: "some data",
venue: "some address",
id: "55a5f98ef7d707ba4f32ac75"
}
]
请有人可以帮助我。
最佳答案
为了获取事件的标记列表,您需要填充tagList
属性。
使用Blueprint API可以单击http://localhost:1337/events/55a5f98ef7d707ba4f32ac75/tagList。
在控制器中,您将使用:
Event
.findOne('55a5f98ef7d707ba4f32ac75')
.populate('tagList')
.exec(...);