【发布时间】:2015-12-22 06:38:31
【问题描述】:
我开发了一个友谊系统,其中用户表有一个友谊列。在本专栏中,我通过逗号分隔将用户的 id 存储在一个数组中。示例:1,5,15,20
也就是说,用户是其他用户的朋友,他们的 id 为 1,5,15,20。但是还有另一种方法可以做到这一点。创建一个友谊表并将所有内容存储在那里。就像在这个例子中一样:
https://stackoverflow.com/questions/25101089/mutual-friendship-rails-4
How to Implement a Friendship Model in Rails 3 for a Social Networking Application?
我的问题是哪种方式是效率和速度的最佳方式?使用数组列或单独的表?
谢谢。
【问题讨论】:
-
当然要分开表!
-
哦,不!不是数据库中非规范化数据的另一个实例.....期待有关如何解决它提出的所有问题的一系列问题
-
你想用 PHP 还是 Ruby 来做这个?
-
@PHPWebDev101 好吧,数组列是用 PHP 开发的,但现在我正在用 rails 重写整个后端。所以,不管是什么最好的方法,我都会在 Rails 中开发它。
-
是的,我建议这样做;列中的逗号分隔值会产生大量编码问题和性能问题,可以通过将数据规范化到单独的表中轻松消除这些问题
标签: ruby-on-rails logic social-networking