3

询问

我正在尝试使用下面的代码查询集合,如此处所建议。它适用于场地名称,但不适用于场地位置 - 我猜这一定与它是一个子模式的事实有关,而且我没有正确编写查询。

    var query = {};
    if(Session.get('venueNameVar')) {
       query.venueName = Session.get('venueNameVar')
    }
    if(Session.get('venueLocationVar')){
       query.venueAddress = {
       neighbourhood : Session.get('venueLocationVar')
    }
    return Venues.find(query);

收藏品

到目前为止,我的主架构和子架构在整个应用程序中运行良好:

//MAIN SCHEMA
Schema.Venues = new SimpleSchema({
    venueAddress: {
        type: Schema.VenueAddress,
        optional: true
    }, [...]

//SUB-SCHEMA
Schema.VenueAddress = new SimpleSchema({
    neighbourhood: {
        type: String,
        max: 100,
        optional: true
    }, [...]

我试过的

  1. 使用Schema.venueAddress.neighbourhood = Sesssion.get('venueLocationVar')- 不起作用
  2. 更改 VenueAddress --> placeAddress - 不起作用
  3. 使用方括号、等号代替冒号等 - 不起作用
4

1 回答 1

2

你能不能试着让query['venueAddress.neighbourhood'] = someVal我不肯定 minimongo 可以使用对象进行搜索

换句话说,您必须dot notation在进行查询时使用

于 2015-12-14T17:04:44.570 回答