0

例如,我有一个非常大的 Excel 电子表格,其中包含用户名、位置、日期和一些数字字段。

User,location,date,value1,value2,value3

Steve,NYC,2012,9,1,3
Steve,NYC,2011,3,3,2
Steve,CA,2011,1,2,0
Michael,CA,2012,10,3,2
Michael,CA,2011,10,2,0

我将如何组织一个 Rails 站点,以便可以查看某个用户的所有值?

例如,

/users/steve/all

将按日期降序显示 user=steve 的所有值。

/users/steve/nyc

将按日期降序显示 user=steve 和 location=nyc 的所有值。

我想我需要创建一个用户模型并将所有数据从 excel 导入数据库,但我不知道如何做到这一点。

该应用程序本质上是一个简单的数据可视化工具。也许我必须分离数据库并创建一个用户 has_many :locations 和 locations :belongs_to 用户,我不确定。我希望以各种方式查看数据——也许我想显示某个位置的所有用户,或者查看某个用户的所有位置,等等……

4

2 回答 2

1

我建议首先在您的 rails 应用程序中设置您的模型。然后,您可以编写一个可能类似于此问题的 rake 任务,或者您可以从头开始构建它。还有一个railscast

于 2012-07-24T01:18:00.323 回答
0

如果您需要直接从 Excel 导入(例如 Excel 表格由用户上传)。您可以使用以下 gem 之一从 Excel 工作表中导入数据

  • roo读取新旧 excel 格式(+其他)
  • 电子表格读取和写入旧的 exel 格式

如果您只有一张 excel 表,那么简单地将数据导出到 csv 并按照上面提到的 stackoverflow 问题中给出的答案进行操作会容易得多。

至于您关于如何为数据库建模的问题的第二部分,您已经有了正确的想法。

最简单的方法是对您的域的外观进行完全建模并相应地转换数据。

于 2012-08-30T10:12:24.707 回答