我在我的Rails应用程序中使用MySQL用户定义的函数(相关的levenshtein比率)来选择类似的字符串。例如,我选择类似的模型按“相似性”排序:
@something = Something.select("*", "levenshtein_ratio(name, '#{Mysql2::Client.escape(name)}') as l_ratio").having("l_ratio > ?", minratio).order("l_ratio DESC")
它工作正常,但有两个问题:
是否有更好,更“本土化”的方式来做同样的事情?
如何从所选对象中获取l_ratio值? ActiveRecord对象不包含它。