$ ne和$ nin没有在Meteor Backend上工作

时间:2017-01-30 03:05:09

标签: mongodb meteor angular-meteor

我注意到无论我在哪里有涉及$ ne或$ nin的出版物定义,它都没有效果。例如,我将出版物定义为

Meteor.publish('testing', function() {
    return Courses.find({name: {$ne: 'Course A'}})
});

我已经确定我的课程名称为“课程A”,但是,当我在客户端订阅这样的课程时:

MeteorObservable.subscribe("testing").subscribe(() => {
        console.log(Courses.find().fetch())
    });

我获得了数据库中的每一门课程(包括名为“课程A”的课程)。如果它是相关的,我对课程的定义是:export const Courses = new MongoObservable.Collection<Course>('courses');。 我的选择器是错误的,还是Meteor的错误?当我在客户端运行相同的选择器时,一切都按预期工作。

1 个答案:

答案 0 :(得分:0)

您是否检查过是否禁用/删除了自动发布包?您可以在.meteor / packages文件中查看它。如果是,则删除它,以便流星尊重您的出版物。

如果这可以解决您的问题,请告诉我。谢谢!

更新1: 试试这个:

MeteorObservable.subscribe("testing").subscribe(() => {
    console.log(Courses.find({name: {$ne: 'Course A'}}).fetch());
});