У меня есть коллекция со списком элементов, называемых «категориями», каждая категория имеет поле _id и имя. Я пытаюсь просто вернуть поиск по названию категории
вот структура документа. Каждый элемент списка имеет эти свойства. Я пытаюсь настроить таргетинг на поле «имя», но получаю сообщение об ошибке
I20160704-22:47:42.976(1)? Исключение при вызове метода findCategory ReferenceError: идентификатор не определен
клиент/html
<form class="form-inline">
<input type="text" class="form-control" id="searchCategory" placeholder="Search for Category">
<button type="submit" class="btn btn-info">Search</button>
</form>
{{#if foundCategory}}
<div class="foundCategory">
<button type="button" class="btn btn-default" id="follow">Follow @{{foundCategory.name}}</button>
</div>
{{/if}}
</template>
сервер/js
Meteor.methods({
'findCategory': function(name) {
return Meteor.CategoryCollection.findOne({
_id: id
}, {
fields: { 'name': 1 }
});
}
});
Я старался
Meteor.methods({
'findCategory': function(name) {
return CategoryCollection.findOne({
name : name
}, {
fields: { 'name': 1 }
});
}
});
но я получаю ошибку.
Исключение при вызове метода «findCategory» TypeError: невозможно вызвать метод «findOne» неопределенного
Как я могу вернуть нужный мне документ?
ИЗМЕНИТЬ
Я использую rest2ddp для вызова данных json и вставки их в CategoryCollection.
я также изменил Meteor.CategoryCollection на просто CategoryCollection
сервер/main.js
REST2DDP.publish("CategoryPublication", {
collectionName: "CategoryCollection",
restUrl: "http://localhost:8888/wordpress/wp-json/wp/v2/categories",
jsonPath: "$.*",
pollInterval: 5000,
});
клиент.подписки.js
CategoryCollection = new Mongo.Collection("CategoryCollection");
Meteor.subscribe("CategoryPublication");
Tracker.autorun(function () {
console.log(CategoryCollection.find().fetch());
});
CategoryCollection
?Meteor.CategoryCollection
почти наверняка неверен (потому что вам действительно не следует расширять объект Meteor своими собственными переменными. - person Christian Fritz   schedule 05.07.2016