用到了和谐宝典
简单的使用如下:
-
gem "harmonious_dictionary"
,然后bundle install
-
rails g harmonious_dictionary:setup
创建必要的配置文件 - 在
config/harmonious_dictionary
文件夹下生成两个文件chinese_dictionary.txt
和english_dictionary.txt
。也可以到 https://github.com/downloads/wear/harmonious_dictionary/dictionaries.zip 下载。 -
rake harmonious_dictionary:generate
生成序列化的词库:harmonious.hash(对应中文)
和harmonious_english.yml
- 在
model
文件中,就可以使用validate_harmonious_of *attrbutes
来验证字段是否有屏蔽字了
常用的几个方法
检查输入是否包含敏感词:
HarmoniousDictionary.clean?(your_input)
检查包含的敏感词:
HarmoniousDictionary.harmonious_words(your_input)
替换包含的敏感词为*:
HarmoniousDictionary.clean(your_input)
-
自定义替换的字符,在
config/initializer
文件夹下创建一个harmonious_dictionary.rb
module HarmoniousDictionary def self.clean_word_basic(word) clearn_words = "`" word.size.times{ clearn_words << "*" } clearn_words << "`" end end
重写self.clean_word_basic(word)
方法即可