0

我在 Rails 应用程序中有一个表,其中每一列都是字符串类型。此列将称为 mycolumn,其格式设置为每个条目都符合格式 NN:NN,其中 N 是 0 到 9 之间的某个数字。

现在我遇到麻烦的地方是我需要找到 mycolumn[0..1] 在一定范围内的所有元素(比如说 35)。

我认为该声明看起来像

Mytable.find(:all, :conditions => ['? <= 35', :mycolumn[0..1].to_i])

这行得通吗?还有另一种方法可以做到这一点吗?

4

1 回答 1

1

不,那样不行——你将不得不:

  1. 格式化适用于您选择的数据库的 SQL 语句
  2. 在表中使用可以自定义查询的数据类型(例如将 NN 和 NN 存储在单独的列中)
  3. 检索所有模型并在 Ruby 中执行选择条件

我推荐#2 --- 存储核心数据,然后添加一个方法将其格式化为 NN:NN

于 2012-07-23T18:16:02.907 回答