我最近完成了 Hartl 的 Rails 教程,并设计了一个我想尝试构建的小应用程序。我想了解我是否需要学习并将单独的数据库(例如 PostgreSQL)集成到我的 Rails 模型中,以便对涉及基于彼此共享质量匹配用户的功能进行建模。
例如,如果 usera
和 userz
都表示他们like chinese food
as 和like spicy meatballs
,则他们将彼此“匹配”,其中任何一个用户都可以发起“友谊请求”。但是,如果a
要喜欢所描述的食物,但用户b
like spicy meatballs
和like tapas
,a
和b
不会相互匹配(因为他们只喜欢 1 个共同点.. 或其他一些愚蠢的匹配逻辑:))。当然,实际模型可能比这稍微复杂一些,其中可能存在“音乐”或“运动”等其他因素,其中匹配过程会认为某些品质优越,并在匹配过程中比其他因素更重视它们.
我的问题是——
- Rails 是否足以处理上述稍微复杂的数据库,用户在其中输入他们的信息,然后“黑盒”模型会吐出匹配项?是否有任何资源可以让我了解更多关于 Rails 中的数据库的信息?
- 如果不是,您会建议我了解更多关于哪种类型的数据库?PostgreSQL 会是一个好的候选者吗?
谢谢!
编辑 - 为澄清起见,我的问题源于本教程本部分中讨论的主题,其中提到了如何使用 Rails 可以使人们“几乎不必考虑 Rails 如何存储数据”。我想知道当数据库需要自己执行某种类型的工作(例如匹配)时,这种情况是否仍然存在。