3

我有一个看起来像的旧表

item-detail-table
  some-key,
  item-1,
  description-1,
  item-2,
  description-2,
  item-3,
  description-3,
  item-4,
  description-4,
  item-5,
  description-5,
  other-fielda,
  other-fieldb,
  etc.

我想让我的 Rails 模型返回五个单独的对象,以响应 find_by_some_key 检索到的每个匹配记录,每个对象都具有逻辑结构:

normalized-item-detail
  some-key,
  item,
  description,
  other-fielda,
  other-fieldb,
  etc.

我以前没有在 Rails 中做过这样的事情,并且想知道做这样的事情的最好/最惯用的方法。

这将是一个只读模型,因此我可以避免需要能够更新结果对象的所有复杂性。

我是否应该有一个代表单个子条目的中间模型,并且只让这个模型返回一个数组,其中包含我想要的那些嘎嘎声?

谢谢!

G。

4

1 回答 1

1

你可以制作一个 TableItem-Model ,它有一个方法可以让你返回规范化的类......

喜欢:

def TableItem < ActiveRecord::Base
  class NormalizedItem
     #attributes
  end

  def getNormalizedItems
     ret = []
     3.times do |u|
       ....
       ret << NormalizedItem.new(params)
     end
     return ret
  end
end
于 2012-12-09T00:43:51.777 回答