【发布时间】:2015-10-03 20:40:22
【问题描述】:
我对模型关联中的索引列的话题有点困惑。
(来自 The Rails 4 Way)我们有 User、Timesheet 和 Expense Report 模型。
User 模型:
has_many: timesheets
has_many: expense_reports
(连同其他型号中对应的belongs_to)
Rails 4 Way 书中将add_index 说成是timesheets 和expense_reports 模型:
add_index :timesheets, :user_id
add_index :expense_reports, :user_id
我不明白在每个外键列之后添加索引的原因。 timesheet 和 expense_report 表已经有一个 primary_key 列,那么为什么不将其用于“性能提升”?添加两个额外的索引对我来说似乎是多余的?有人能解释一下好处吗?
【问题讨论】:
标签: ruby-on-rails ruby database model associations