Downcasing&在Ruby on Rails上升级

时间:2010-12-23 05:01:50

标签: ruby-on-rails ruby

我在rails应用程序上构建了一个ruby,允许用户跟踪他们的锻炼。我也允许他们(比如博客)为他们的锻炼创建标签。当用户在其锻炼中添加标签时,他们会通过auto_complete帮助他们保持井井有条。

随着网站越来越受欢迎,由于资本化,我得到了一点点混乱/不一致。有没有办法告诉应用程序只用大写或小写创建tag.name

2 个答案:

答案 0 :(得分:6)

尝试类似:

class Tag < AR::Base
  before_save :downcase_name

  private

  def downcase_name
    self.name.downcase!
  end
end

答案 1 :(得分:0)

Ruby在String类上有一个upcasedowncase,允许你这样做。只需在保存数据之前拨打电话。

例如,如果您使用的是simple_auto_complete gem,则可以执行以下操作:

class BlogController < ApplicationController
    autocomplete_for :post, :title do |items|
        items.map {|x| x.upcase}
    end
end

我现在无法测试,如果有语法错误,请原谅我。