为什么我的迁移中的创建连接表与文档不同?

时间:2018-01-21 21:32:28

标签: ruby-on-rails migration jointable

我想创建一个评分页面,例如:https://nomadlist.com/amsterdam-netherlands

  1. rails g model Rating name user:references

  2. rails g migration CreateJoinTableItemsRatings item rating

  3. 我明白了:

    create_join_table :items, :ratings do |t| t.index [:item_id, :rating_id] t.index [:rating_id, :item_id] end

    但是从docs我看到了:

    create_join_table :items, :ratings do |t| t.index :item_id t.index :rating_id end

    为什么会有区别?哪一个是首选,为什么?

1 个答案:

答案 0 :(得分:1)

生成器是更高性能(和首选)的迁移。

这里有一个非常详细的讨论:How to properly index fields on a Rails join table migration?