0

我最近完成了 Hartl 的 Rails 教程,并设计了一个我想尝试构建的小应用程序。我想了解我是否需要学习并将单独的数据库(例如 PostgreSQL)集成到我的 Rails 模型中,以便对涉及基于彼此共享质量匹配用户的功能进行建模。

例如,如果 usera和 userz都表示他们like chinese foodas 和like spicy meatballs,则他们将彼此“匹配”,其中任何一个用户都可以发起“友谊请求”。但是,如果a要喜欢所描述的食物,但用户b like spicy meatballslike tapas,ab不会相互匹配(因为他们只喜欢 1 个共同点.. 或其他一些愚蠢的匹配逻辑:))。当然,实际模型可能比这稍微复杂一些,其中可能存在“音乐”或“运动”等其他因素,其中匹配过程会认为某些品质优越,并在匹配过程中比其他因素更重视它们.

我的问题是——

  • Rails 是否足以处理上述稍微复杂的数据库,用户在其中输入他们的信息,然后“黑盒”模型会吐出匹配项?是否有任何资源可以让我了解更多关于 Rails 中的数据库的信息?
  • 如果不是,您会建议我了解更多关于哪种类型的数据库?PostgreSQL 会是一个好的候选者吗?

谢谢!

编辑 - 为澄清起见,我的问题源于本教程本部分中讨论的主题,其中提到了如何使用 Rails 可以使人们“几乎不必考虑 Rails 如何存储数据”。我想知道当数据库需要自己执行某种类型的工作(例如匹配)时,这种情况是否仍然存在。

4

1 回答 1

0

哇哇哇。首先,rails 不是数据库。模型是数据库的反映,是一种将记录视为实例变量的结构化方式。所以是的,你需要一个数据库。建议您从 SQLite 开始,因为它既美观又小巧,并且数据在您的应用程序中以文件的形式存在。然后稍后升级 MySQL(注意:这是一般建议,不知道您接下来可能会做什么项目)。

资源:我强烈推荐 Railscasts.com 从这个开始,然后一路向上: http ://railscasts.com/episodes/310-getting-started-with-rails

于 2012-07-02T22:10:18.307 回答