我正在通過使用Mongoose的Mongodb數據庫執行搜索。在客戶端,我有:貓鼬搜索查詢
var searchQuery = {
title: ($('#responseTitle').val()),
text: ($('#responseKeywords').val())
};
$.ajax({
type: "GET",
url: "../../api/threads",
data: searchQuery,
success: function(data){
prefetchedResponses = data;
loadResponseBrowser();
}
})
在服務器端,我有:
router.get('/', function(req, res, next) {
Response.find(req.query, function(err, foundResponses){
...
這工作,但只返回與精確匹配的字段。我想實現一個正則表達式類型的搜索。但是,我無法決定是在客戶端還是服務器端進行。在服務器端,它將涉及遍歷req.query
的每個字段並附加必要的屬性以啓用正則表達式搜索。在客戶端,通過構建title
和text
來預先定義這些屬性,會更容易。但是,在客戶端做這件事對我來說似乎是錯誤的,因爲後端可能會隨時發生變化。
在Mongoose中是否有第三種選擇可以讓我將regex應用於所有領域?
是的,我知道,但就像我說的,它涉及到迭代在每個領域 – db2791