Solr Url参数和特定语法
我试图通过URL使用:Solr Url参数和特定语法,solr,extjs4,Solr,Extjs4,我试图通过URL使用:setParams({id:id,model:mod})传递参数,在浏览器的地址栏中我看到localhost/MVC/query?id=1&model=member。这是成功的 但我想传递url栏中类似的参数:localhost/MVC/query?fq=model:member+model:new\u member。我正在尝试集成“Solr”搜索服务器,这是支持过滤查询的语法 感谢您的帮助。只需查看按钮#getHref(): 以及toQueryString(): 另一个注
setParams({id:id,model:mod})
传递参数,在浏览器的地址栏中我看到localhost/MVC/query?id=1&model=member
。这是成功的
但我想传递url栏中类似的参数:localhost/MVC/query?fq=model:member+model:new\u member
。我正在尝试集成“Solr”搜索服务器,这是支持过滤查询的语法
感谢您的帮助。只需查看
按钮#getHref()
:
以及toQueryString()
:
另一个注意事项是,您仍然可以使用
Ext.Object.toQueryString(params)
获取字符串,然后应用replace()
函数获取您的Solr查询字符串样式,而不是编写上面的全新函数toSolrQueryString()
getHref: function() {
var me = this,
params = Ext.apply({}, me.baseParams);
params = Ext.apply(params, me.params);
return me.href ? Ext.urlAppend(me.href, Ext.Object.toQueryString(params)) : false;
},
toQueryString: function(object, recursive) {
...
for (j = 0, ln = paramObjects.length; j < ln; j++) {
...
params.push(encodeURIComponent(paramObject.name) + '=' + encodeURIComponent(String(value)));
}
return params.join('&');
},
return me.href ? Ext.urlAppend(me.href, 'fq=' + toSolrQueryString(params)) : false;