用到了和谐宝典
简单的使用如下:
-
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.rbmodule HarmoniousDictionary def self.clean_word_basic(word) clearn_words = "`" word.size.times{ clearn_words << "*" } clearn_words << "`" end end
重写self.clean_word_basic(word)方法即可