Skip to content

Instantly share code, notes, and snippets.

@warpr
Created January 12, 2013 13:39
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save warpr/4518125 to your computer and use it in GitHub Desktop.
Save warpr/4518125 to your computer and use it in GitHub Desktop.
var _ = require('underscore');
var couchdb = require('couchdb-api');
var server = couchdb.srv();
var db = server.db("databank-test");
var docs = [
{ _id: "kuno", name: "Kuno" },
{ _id: "warp", name: "Warp" },
{ _id: "pak-sang-soo", name: "박 상수" }
];
var map = function (doc) {
emit ([doc._id, doc.name], doc);
};
var printresponse = function (name) {
return function (err, response) {
console.log (name + " ERROR: ", err);
console.log (name + " RESPONSE: ", JSON.stringify (response, null, 2));
};
};
/* ===[ db.tempView ]=================================== */
var tempsearch = function () {
var query = {
"qs": { "key": JSON.stringify (["warp", "Warp"]) }
};
db.tempView (map, null, null, query, printresponse("db.tempView"));
/*
the code above works. however, I would have expected this to work:
var query = { "key": ["warp", "Warp"] };
db.tempView (map, null, query, printresponse("db.tempView"));
*/
};
/* ===[ view.query ]=================================== */
var permsearch = function () {
var ddoc = db.designDoc("viewtest");
ddoc.view("id-name-test", map).save(function (err, response) {
var query = { "key": ["warp", "Warp"] };
var view = db.ddoc("viewtest").view("id-name-test");
view.query (query, null, printresponse("view.query"));
});
};
db.bulkDocs(docs, function (err, body, res) {
tempsearch ();
permsearch ();
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment