清理ActiveRecord的领域

问题描述:

我有模型Article它有场title与可能包含一些“神奇”的模式一些文字。在某些情况下,我需要在标题中处理文本,而其他情况下我不这样做,但在最后一种情况下,我需要获取不含该模式的字符串。清理ActiveRecord的领域

,比如我有标题值像“东西** **非常有趣”,当我打电话@article.title我需要得到清理字符串如“一些非常有趣的”,但是当我打电话@article.title_raw我需要得到原始字符串。

的问题还在于,我已经运行的应用程序,我cannt做“革命”,但什么样的方式去...

-
对不起我的英语不好。

+0

当你说有“魔术模式“在这些直接实现或使用像http://en.wikipedia.org/wiki/Markdown或http://en.wikipedia.org/wiki/Textile_(markup_language某种形式的标记库) – 2010-04-06 15:25:20

你可以使用正则表达式

@article.title.gsub(/pattern1|pattern2|pattern3|.../, '') 

IE

@article.title 
#=> "Some _cool_ **text**" 
@article.title.gsub(/**|_/, "") 
#=> "Some cool text" 

我会定义名为“title_raw”和“称号”的文章模型和在这些方法中的方法做的改变需要对价值并在这些功能中返回它们。事情是这样的:

高清标题 title.gsub(/ ** | _ /, “”) 结束

高清title_raw self.title 结束