我在我的很多模型中都使用了以下功能。我使用MongoID作为MongoDB包装器
def make_slug
self.slug = self.name.downcase.gsub(/[^a-z1-9]+/, '').chomp('')
end这是最好的地方放置它比复制和粘贴它在我的所有模型。
也有推荐一个好的鼻涕虫宝石为Rails4?
发布于 2014-03-21 07:47:45
我想你可以做一个混音/模块,在你需要这个功能的模型中包含它。如下所示:
模块示例:
module SlugMaker
def make_slug
# Do your magic here
end
end然后把它包含在你的模型中:
class SuperAwesomeModel
include SlugMaker
def some_action
make_slug
end
end 发布于 2014-03-21 07:25:59
所有模型都是从ActiveRecord继承而来的,您可以打开本征类在那里添加一个单例方法,并在所有模型中使用。
我要选择的方法是将它放在lib目录下,并在我需要的每个模型中要求它。
https://stackoverflow.com/questions/22552615
复制相似问题