小编Pau*_*rey的帖子

Postgresql前缀通配符为全文

我正在尝试使用Postgresql运行全文查询,该查询可以使用通配符来满足部分匹配.

在搜索词后面有一个后缀通配符似乎很容易,但我无法弄清楚如何指定前缀通配符.

例如,我可以使用类似的东西轻松地执行后缀搜索.

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', 'don:*') )
Run Code Online (Sandbox Code Playgroud)

应该返回匹配"伦敦"的结果

但是,我似乎不能像...那样做前缀搜索

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', ':*don') )
Run Code Online (Sandbox Code Playgroud)

理想情况下,我希望在搜索词的前端和末尾添加一个通配符,例如......

SELECT "t1".* 
FROM "t1" 
WHERE (to_tsvector('simple', "t1"."city") @@ to_tsquery('simple', ':*don:*') )
Run Code Online (Sandbox Code Playgroud)

我可以使用LIKE条件但是我希望能从Postgres中的全文搜索功能中受益.

sql postgresql full-text-search full-text-indexing

20
推荐指数
2
解决办法
1万
查看次数

nginx缓冲其错误日志吗?

我们正在寻找nginx错误日志进行修改,但有一些难以解决边缘情况,如文件截断等.

知道nginx是否动态写入错误日志文件或缓冲写入错误日志会很有帮助.缓冲不会对错误日志有很大的意义,但仍然可以确保nginx的高性能.

我们知道nginx缓冲区访问日志写入,但目前无法找到证据表明它对错误日志执行相同操作.

nginx web

5
推荐指数
1
解决办法
1453
查看次数

Zend路由和HTTP动词/方法

嗨我想在Zend应用程序中设置一些REST路由,我想知道如何限制可以访问路由的HTTP方法.

$route = new Zend_Controller_Router_Route('user/reset_password', array(
                'module' => 'default',
                'controller' => 'user',
                'action' => 'resetpassword'
            ));
$front_controller->getRouter()->addRoute('reset_password', $route);
Run Code Online (Sandbox Code Playgroud)

在这条路线中,我想指定此路由将响应的HTTP动词,如GET,POST,PUT等,例如向数组添加"method"=>"POST".

谢谢,

rest zend-framework routes http zend-route

4
推荐指数
1
解决办法
957
查看次数

带有连字符和停用词的Solr(太阳黑子)查询

我正在使用Solr 1.4.1的Ruby Sunspot gem

我有一个关于用连字符搜索的问题.

当我搜索"foo bar bla"时,会返回预期的结果.

当连字符包含在搜索词中时,如"foo - bar bla",则不会返回结果.

我已经在我的停用词列表中添加了连字符,并在过去几天以多种方式调整了我的schema.xml文件,但无济于事.

对于那些暴露于太阳黑子的人,我的最小单词匹配设置为3,这与在solrconfig.xml文件中设置相同的mm配置相同,例如:3

这就是我的schema.xml文件的相关部分的外观.

    <!-- *** This fieldType is used by Sunspot! *** -->
<fieldType name="string" class="solr.StrField" tokenized="true" omitNorms="true" sortMissingLast="true">
  <analyzer type="query">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.PorterStemFilterFactory"/>
    <filter class="solr.StopFilterFactory" words="stopwords.txt" ignoreCase="true"/>
  </analyzer>
  <analyzer type="index">
    <tokenizer class="solr.StandardTokenizerFactory"/>
    <filter class="solr.ASCIIFoldingFilterFactory"/>
    <filter class="solr.StandardFilterFactory"/>
    <filter class="solr.LowerCaseFilterFactory"/>
    <filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="false" />
    <filter class="solr.PorterStemFilterFactory"/>
    <filter class="solr.StopFilterFactory" words="stopwords.txt" ignoreCase="true"/>
    <filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="15" side="front"/>
  </analyzer>
</fieldType>

<!-- *** This …
Run Code Online (Sandbox Code Playgroud)

solr ruby-on-rails sunspot sunspot-rails sunspot-solr

2
推荐指数
1
解决办法
1528
查看次数