Методы используются для взаимодействия с текущим экземпляром модели. Пример:
var AnimalSchema = new Schema({
name: String
, type: String
});
// we want to use this on an instance of Animal
AnimalSchema.methods.findSimilarType = function findSimilarType (cb) {
return this.find({ type: this.type }, cb);
};
var Animal = mongoose.model('Animal', AnimalSchema);
var dog = new Animal({ name: 'Rover', type: 'dog' });
// dog is an instance of Animal
dog.findSimilarType(function (err, dogs) {
if (err) return ...
dogs.forEach(..);
})
Статика используется, когда вы не хотите взаимодействовать с экземпляром, но делаете вещи, связанные с моделью (например, ищите всех животных с именем «Ровер»).
Если вы хотите вставить / обновить экземпляр модели (в БД), тогда вам нужно methods
. Если вам просто нужно сохранить / обновить материал, вы можете использовать функцию save
(уже существует в Mongoose). Пример:
var Animal = mongoose.model('Animal', AnimalSchema);
var dog = new Animal({ name: 'Rover', type: 'dog' });
dog.save(function(err) {
// we've saved the dog into the db here
if (err) throw err;
dog.name = "Spike";
dog.save(function(err) {
// we've updated the dog into the db here
if (err) throw err;
});
});
Библиотеки POCO C ++ (POCO означает POrtable COmponents) - это библиотеки классов C ++ с открытым исходным кодом , которые упрощают и ускоряют разработку сетецентрических систем, переносимые приложения на C ++. Библиотеки отлично интегрируются со стандартной библиотекой C ++ и заполняют многие из оставленных ею функциональных пробелов. Их модульный и эффективный дизайн и реализация делают библиотеки POCO C ++ чрезвычайно подходящими для встраиваемой разработки - области, где язык программирования C ++ становится все более популярным из-за его пригодности как для низкоуровневых (устройств I / O, обработчики прерываний и т. Д.) И высокоуровневую объектно-ориентированную разработку. Конечно, библиотеки POCO C ++ также готовы к решению задач корпоративного уровня.
Библиотеки POCO C ++ освобождают разработчиков от повторного изобретения колеса и позволяют им тратить свое время на более полезные области, такие как быстрое выполнение задач и работа над функциями, которые делают их приложение уникальным. .
Based in the language you want to choose POCO means
Plain Old CLR Object
as Wikipedia mention or,
Plain Old C++ Object
as the PocoCapsule mentions it or,
POrtable COmponents
as the POCO Project mentions it.
For what I'm concerned and for the reason of this question, and of course in simple words, it's a C++ library. :)
The POCO C++ Libraries aim to be for network-centric, cross-platform C++ software development what Apple's Cocoa is for Mac development, or Ruby on Rails is for Web development — a powerful, yet easy to use platform to build your applications upon.
The POCO C++ Libraries are built strictly on standard ANSI/ISO C++, including the standard library. The developers of the POCO C++ Libraries attempt to find a good balance between using advanced C++ features and keeping the classes comprehensible and the code clean, consistent and easy to maintain.
Подобные аббревиатуры обычно обозначают «Обычный старый ...», например, POX, что означает «Обычный старый XML».
Я бы предположил, что POCO был либо «Обычный старый объект C», либо «Обычный старый» Объект класса или его производная. Было бы полезно, если бы я знал контекст (например, язык программирования, который вы используете).
lainMH и Дарнелл уже дали вам ответ. Как сказано в статье Википедии, есть ссылка на термин POJO , и предыстория этого термина находится на сайте Мартина Фаулера .