Mel*_*Mel 4 postgresql ruby-on-rails rails-migrations
如何在Rails 4迁移中指定整数大小的限制?(我的数据库是PostgreSQL.)
我有字段phone_number,应该是8位数.如果我指定:limit => 8,那么这是字节大小而不是数字的长度.
有没有办法做到这一点?
你这一切都错了.电话号码根本不是号码,电话号码是包含(大部分)数字字符的字符串.你没有做任何数字 - 比如算术 - 用电话号码,所以它们不是数字,它们是字符串.
所以让你的phone_number列成为长度为8的字符串:
t.string :phone_number, :limit => 8
Run Code Online (Sandbox Code Playgroud)
并清理它并验证模型中的格式:
before_validation :clean_up_phone_number
validates :phone_number, :format => { :with => /\A\d{8}\z/ }
def clean_up_phone_number
# Do whatever you want or need to strip out spaces, hyphens, etc. in here
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1996 次 |
| 最近记录: |