拼音字母搜索功能 之 gem

原创 2013年12月04日 11:25:55
拼音字母搜索功能


使用的gem: 

https://github.com/huacnlee/redis-search



使用方法



配置文件路径: config/initializers/redis_search.rb

# -*- coding: utf-8 -*-
require "redis"
require "redis-namespace"
require "redis-search"


begin
  redis = Redis.new(:host => "127.0.0.1",:port => "6379")
  redis.select(3)


  redis = Redis::Namespace.new("you_app_name:redis_search", :redis => redis)
  Redis::Search.configure do |config|
    config.redis = redis
    config.complete_max_length = 100
    config.pinyin_match = true
    # 是否关闭中文分词,true为关闭,可节省内存占用
    config.disable_rmmseg = true
  end
rescue
  p "redis server not running"
end



为模块做索引

class User < ActiveRecord::Base
  include Redis::Search


  def hits
    # 计算权重
  end


  redis_search_index(:title_field => :name, #主要索引域
                     :alias_field => :login,  #次要的索引域
                     :score_field => :hits, #传入一个方法名,根据方法返回值来确定权重
                     :prefix_index_enable => true, #逐字索引,逐字搜索时开启
                     :condition_fields => [:role], #条件,传入的是一组字段,搜索时可以以          
                                                   :conditions => {:role => :admin}) 的方法使用。
                     :ext_fields => [:email, :created_at]) #其余需要索引的域
end


# 重新build索引
rake redis_search:index

搜索

# 逐字搜索
Redis::Search.complete("User", params[:query], :conditions => {:role => :admin})


# 全文搜索
Redis::Search.query("User", params[:query], :conditions => {:role => :admin})



版权声明:本文为博主原创文章,未经博主允许不得转载。

js 中文转成拼音字母 并A-Z排序 索引功能

1.第一种方法比较: function pySegSort(arr,empty) {    if(!String.prototype.localeCompare)        return n...

java根据中文获取拼音字母代码

  • 2017年03月14日 15:45
  • 5KB
  • 下载

如何取汉字的第一个拼音字母

  • 2007年07月24日 19:32
  • 21KB
  • 下载

JAVA如何把输入中文输出汉语拼音字母的原理与代码

按照拼音区间不全面,很多常见字不能覆盖。 比如:怡、骟、骠、骢 等。 比较好的解决方案就是找一份全面的拼音汉字对照表,生成Map来查找。 下面是按照拼音区间的思路实现的不完全工具类: pack...

蓝桥杯----拼音字母

题目 Problem Description 在很多软件中,输入拼音的首写字母就可以快速定位到某个词条。比如,在铁路售票软件中,输入: “bj”就可以定位到“北京”。怎样在自己的软件中实现这个功能呢...

《拼音字母》 蓝桥杯复试试题

题目描述 【编程题】(满分19分)     在很多软件中,输入拼音的首写字母就可以快速定位到某个词条。比如,在铁路售票软件中,输入: “bj”就可以定位到“北京”。怎样在自己的软件中实现这个功...

excle汉字转化拼音字母

  • 2013年06月03日 16:04
  • 2KB
  • 下载

java获取中文拼音字母

  • 2016年12月23日 16:56
  • 173KB
  • 下载

php 实现汉字转化为拼音字母

//PHP 实现汉字转化拼音 class pin { function Pinyin($_String, $_Code='gb2312'){ $_DataKey = "a|ai...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:拼音字母搜索功能 之 gem
举报原因:
原因补充:

(最多只允许输入30个字)