ruby on rails -在MySQL中表示无限



我一直在建立一个追踪作者版税的系统。假设作者的版税是基于销售额:0 - 5000,他们得到10%。5001 - 10000,他们得到15%。我的问题是,我如何告诉Rails最终规则应该是10,001 -无穷大?现在,这是在royalty_rules表中表示的,它有上下列,每个royalty_rule belongs_to: contract和每个contract:has_many royalty_rules。

我在日期方面也有类似的问题…我把开始和结束的时间写在日期里,有时,我不希望合同有结束的日期。

虽然Ruby没有Infinity-Infinity的常量,但它确实知道这些概念,您可以自己创建它们:

irb> Numeric::Infinity = 1.0/0
#=> Infinity
irb> range = 10001..Numeric::Infinity
#=> 10001..Infinity
irb> range.include?( 234234234234134134134 )
#=> true

Edit: 实际上,Ruby 1.9.2似乎已经添加了Float::INFINITY,所以如果你处于领先地位,你可以使用它

这里是关于在Rails中使用Infinity的小教程

我建议允许数据库中的上限列为NULL。这将映射到Rails中的nil,并且很容易测试,无论是nil?还是nil是"假"的事实。

相关内容

  • 没有找到相关文章

最新更新