过滤器返回流星发现一号
Filter Return of Meteor FindOne?
我将如何过滤Iron Router中FindOne函数的返回?我认为聚合是不可能的,但我可能是错的。我尝试了许多不同的方法都不起作用。我想返回 id、name 和它在其中找到匹配season_number的季节对象。
我的数据库设置如下:
- _id
- 名字
-
季节(数组)
-
季节(对象)
-
season_number
-
剧集(阵列)
-
插曲(对象)
- episode_title
- episode_number
-
-
-
这是我的铁路由器代码,目前只运行一个findOne函数。
Router.route('/show/:_id/season/:season_number', {
name: 'viewSeasonPage', // This links to the template
data: function() { return Tv.findOne({_id:"KQBXq4nri7zssDna2", "seasons.season_number": 2}))}
});
Router.route('/show/:_id/season/:season_number', {
name: 'viewSeasonPage', // This links to the template
data: function() {
let tv = Tv.findOne({_id:"KQBXq4nri7zssDna2", "seasons.season_number": 2});
if (tv && tv.seasons) { return tv.seasons.find(function(season) { return season.season_number == 2; })
}
});
您需要筛选结果以创建要返回的数据对象,其中包含所需的信息。如果搜索未找到任何内容,则数据为空对象。
Router.route('/show/:_id/season/:season_number', {
name: 'viewSeasonPage',
data: function() {
// Find your object
var tv = Tv.findOne({
_id: this.params._id,
seasons: {
$elemMatch: {
season_number: this.params.season_number
}
}
});
// Fill data by filtering the correct season
var data = {};
if (tv) {
data._id = tv._id; // 1. ID
data.name = tv.name; // 2. NAME
// Find correct season in array
var season;
for (var i = tv.seasons.length - 1; i >= 0; i--) {
season = tv.seasons[i];
if (season.season_number == this.params.season_number) {
data.season = season; // 3. SEASON
}
};
}
return data;
}
});
我知道这是很多编码,但这是为了理解想法和过程。
相关文章:
- Javascript返回值只在循环中返回一次
- 如何在Facebook上的iframe应用程序中使后退按钮返回到上一页
- 从我的控制器返回一个不同于200的代码以触发ajax错误,这被认为是一种好的做法吗
- 返回上一页时,Javascript仍处于活动状态
- 我在会话变量中传递了一个数组.我需要将关键笔划传递给它以返回值
- 如何在jQuery中一次写入设置多个类号
- 如何将返回一串数字的 JSON 属性转换为日期
- 如何在下一次 AJAX 调用中访问从一个 AJAX 调用返回的变量
- 数据表自动生成的序列号无法正常工作.对于每一页
- 读取 json 文件 Javascriot 后返回一个数组
- Javascript:编写一个函数,接收一个数组,然后返回一个只有唯一数字的数组,只删除数组
- Python返回上一页并记住元素
- 如何返回到上一页并用php或javascript刷新它
- 此变量是一个数组.为什么它返回未定义
- 过滤器返回流星发现一号
- 如何一次返回和显示数据3?(使用Firebase和Angular)
- 使用Handsontable-in-handsontable,如何仅从一列返回值?
- 一次返回数组的x个元素
- 一键返回两次结果
- 只加载一次返回USER的脚本