【问题标题】:Refactoring Rails Join Tables – Which format should I keep重构 Rails 连接表——我应该保留哪种格式
【发布时间】:2015-10-17 23:01:56
【问题描述】:

我目前正在重构 Rails 应用程序中使用的表。在整个开发过程中,人们使用了各种不同的方法来创建要在has_and_belongs_to_many 中使用的连接表。

我应该使用这三种格式中的哪一种;

1 – ID 和时间详细信息

id、table_a_id、table_b_id、created_at、updated_at

2 - ID

id、table_a_id、table_b_id

3 – 只是表 ID

table_a_id,table_b_id

目前的想法

我倾向于第三个选项,因为在我的应用程序中,我们不关心何时建立关系,我也看不到 ID 中的意义,因为我们永远不会直接查询该表。

这是短视吗?包含所有字段的开销将是最小的,但如果它们只是坐在那里不被使用,我宁愿我们没有它们。

【问题讨论】:

    标签: mysql ruby-on-rails jointable


    【解决方案1】:

    当您使用has_and_belongs_to_many 关联时,您的第三个选项是最佳选择。除了引用行的外键之外,HABTM 关联表不应包含任何其他数据。

    否则,如果您确实想在两个表之间包含任何类型的关系数据,您可以使用 has_many :through 来建立您的 rails 关联。

    其他参考资源:

    【讨论】:

    • 好东西,我们在整个应用程序中都使用了 HABTM,所以这很有意义。
    猜你喜欢
    • 1970-01-01
    • 2012-01-11
    • 2010-10-09
    • 2012-01-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-11
    • 2014-12-10
    相关资源
    最近更新 更多