首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >rails中的数字格式设置

rails中的数字格式设置
EN

Stack Overflow用户
提问于 2012-04-30 02:43:38
回答 2查看 385关注 0票数 1

我对ruby和rails非常陌生,我想在数据库中有一个属性,它是一个数字。

->The编号的最大长度可以为10。

->The编号分为3个部分,每个部分用"-“分隔。

->The左起第一部分可以有2-7个数字,第二个部分应该恰好有2个数字,第三个部分应该恰好有1个数字。

例如23-56-7

3454-54-3

3435464-54-3是有效数字,

我该怎么做呢?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-04-30 02:53:30

这取决于,如果它包含'-‘,那么它不是一个数字,所以你可能想要将它存储为一个字符串,并在创建时验证它。

有两种方法可以做到这一点,从数据库或从rails。我建议从rails模型中验证它。http://guides.rubyonrails.org/active_record_validations_callbacks.html

您可能希望使用正则表达式进行验证。http://www.rubular.com

如果你想对这些数字进行计算,你可以很容易地这样做

代码语言:javascript
运行
复制
yournumber.split('-').map { |x| x.to_i }

这将返回一个包含3个整数的数组。

票数 2
EN

Stack Overflow用户

发布于 2012-04-30 03:06:32

首先,您需要设置字符串数据类型,并且可以使用适当的正则表达式使用http://www.rubular.com/进行验证,例如: 23-56-7

代码语言:javascript
运行
复制
validates_format_of     :number, :with => /^[1-9][1-9]-[1-9][1-9]-[1-9]$/
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10374891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档