成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

基于mongodb的搜索分頁

YPHP / 3339人閱讀

摘要:模糊查詢并分頁建立數(shù)據(jù)庫代碼如下頁面布局這里只需要搜索框和搜索按鈕,再點擊按鈕時,執(zhí)行方法并發(fā)送請求代碼如下請輸入項目名稱搜索設置每頁顯示頁碼設置當前頁碼為獲取查找條件為模糊查詢固定語法,為參數(shù)刷新頁面查找內容查找個數(shù)重新分頁改變頁碼

mongodb模糊查詢并分頁

1.建立數(shù)據(jù)庫

代碼如下:

var mongoose = require("mongoose");
var shortid = require("shortid");
var Schema = mongoose.Schema;

var IndexDataSchema = new Schema({
    _id: {
        type: String,
        unique: true,
        "default": shortid.generate
    },
    type: String,
    city: String,
    name:string,
    value: [{name: String, value: String}],
    create: {type: Date, default: Date.now},
    expand: String
});

IndexDataSchema.statics = {
    defaultSort: {"create": 1},
    defaultOptions: {"pageSize": 0}

};


var IndexData = mongoose.model("IndexData", IndexDataSchema);

module.exports = IndexData;

頁面布局
這里只需要搜索框和搜索按鈕,再點擊按鈕時,執(zhí)行search()方法并發(fā)送請求

代碼如下:

  

到數(shù)據(jù)庫查找并返回相應內容

 var formidable = require("formidable");
    var common = require("./common");
    var path = require("path");
    var fs = require("fs");
    var path = require("path");
    var guid = require("guid");
    var shortid = require("shortid");
    
    var AuctionHouse = require("./db/IndexData");


  var funs = {
    getList: function (collectionName, req, res, next) {
        var mainObj = transformCollctionName(collectionName);
        if (!mainObj) {
            next();
        }
        var options = req.query;
        var sort = options.sort || mainObj.defaultSort;
        var pageSize = options.pageSize || mainObj.defaultOptions.pageSize;
        var currentPage = options.currentPage || 1;
        var condition = options.condition || {}
        
        //此部分為查找條件
        mainObj.find(condition).sort(sort).skip((currentPage - 1) * pageSize).limit(pageSize).exec(function (err, docs) {
            if (err) {
                next(err);
            }
            return res.json(common.returnData(true, docs));
        })
    },
    countList: function (collectionName, req, res, next) {
        var mainObj = transformCollctionName(collectionName);
        if (!mainObj) {
            next();
        }
        var condition = req.query.condition || {}
        mainObj.find(condition).count().exec(function (err, docs) {
            if (err) {
                next(err);
            }
            return res.json({"count": docs});
        })
    },
    HandleEvent: function (collectionName, actionsName, req, res, next) {
        var mainFuns = getCollctionFuns(collectionName)
        if (!mainFuns) {
            next();
        }
        var fun = mainFuns[actionsName];
        if (!fun) {
            next();
        }
        fun(req, res, next);
    }

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉載請注明本文地址:http://systransis.cn/yun/91654.html

相關文章

  • 基于mongodb搜索分頁

    摘要:模糊查詢并分頁建立數(shù)據(jù)庫代碼如下頁面布局這里只需要搜索框和搜索按鈕,再點擊按鈕時,執(zhí)行方法并發(fā)送請求代碼如下請輸入項目名稱搜索設置每頁顯示頁碼設置當前頁碼為獲取查找條件為模糊查詢固定語法,為參數(shù)刷新頁面查找內容查找個數(shù)重新分頁改變頁碼 mongodb模糊查詢并分頁 1.建立數(shù)據(jù)庫 代碼如下: var mongoose = require(mongoose); var shortid =...

    flyer_dev 評論0 收藏0
  • 用vue搭建個人博客介紹----mapblog小站

    摘要:后端主要使用的框架,數(shù)據(jù)庫采用。后臺管理登錄采用與后端進行登陸狀態(tài)的確認。本文首發(fā)于小站,這是一個積累和分享知識的個人博客 這篇文章擱置了很長時間,最終決定還是把它寫出來,給剛開始學習vue并且想用vue寫個人博客的同學一個參考。因為當初我也是參考了其他人分享的知識,從一個vue小白變成了一個入門級選手,并最終完成了這個個人博客的搭建工作,代碼已托管在Github-justJokee。...

    Ashin 評論0 收藏0
  • 電商參考架構第一部分:搭建一個靈活、可搜索、響應快速產品目錄系統(tǒng)

    摘要:因為他們可能會有許多顧客對相同的商品目錄進行多次請求。然而,對于我們的參考架構,我們想完全在中實現(xiàn)一個多方面搜索。 本文源地址:http://www.mongoing.com/blog/retail-reference-architecture-part-1 如今,產品目錄數(shù)據(jù)管理對零售商而言是一個非常復雜的問題。經過多年對多個龐大、由供應商提供的系統(tǒng)的依賴之后,零售商目前正在重新考...

    VincentFF 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<