我有一个带有电话号码 text_field 标记的表单,我想将信息作为纯整数保存到数据库中。我虽然会涉及到一个 before_save,它基本上会删除所有的 (),- 等。
我在另一篇文章中发现,类似这样的内容可能会覆盖来自“电话”字段的值。
def original_number=(value)
value.gsub!(/\D/, '') if num.is_a?(String)
write_attribute(:original_number, num.to_i)
end
但是, =(value) 让我有点困惑。我将如何将其写为 before_save 参数?
即 before_save #######
定义#######
结尾
我将如何为 original_number=(value) 编写它?
这是我的模型到目前为止的样子
# == Schema Information
#
# Table name: phones
#
# id :integer not null, primary key
# name :string(255)
# twilio_number :integer
# original_number :integer
# user_id :integer
# created_at :datetime not null
# updated_at :datetime not null
#
class Phone < ActiveRecord::Base
attr_accessible :original_number, :user_id, :name, :twilio_number
belongs_to :user
validates :name, presence: true
validates :twilio_number, presence: true
validates :original_number, presence: true
validates :user_id, presence: true
default_scope order: 'phones.created_at DESC'
end