fly*_*llo 1 ruby-on-rails ruby-on-rails-3
我正在开发一个rails应用程序,我试图在保存或创建属性之前对其进行标题化.我很确定我已经正确地完成了这个,但是,每当我尝试在我的rails控制台中创建一个新记录时,标题化都没有发生.这是我的型号代码:
class City < ActiveRecord::Base
attr_accessible :name, :region_id
belongs_to :region
before_save :tileize_name
before_create :tileize_name
def tileize_name
self.name.titleize
end
end
Run Code Online (Sandbox Code Playgroud)
当我在控制台中读取属性时,标题化方法有效.例如:
Region.find(4).name
=> "arizona"
Region.find(4).name.titleize
=> "Arizona"
Run Code Online (Sandbox Code Playgroud)
我在这里错过了什么吗?
您正在标题名称但不保存它.
string = "hello"
string.titleize
# => "Hello"
string
# => "hello"
string = string.titleize
# => "Hello"
string
# => "Hello"
Run Code Online (Sandbox Code Playgroud)
您需要将标题化名称分配给name属性.
def tileize_name
self.name = self.name.titleize
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1518 次 |
| 最近记录: |