我有以下型号:
class User
has_many :items
end
class Item
belongs_to :user
end
我在create_table
内items
:
t.belongs_to :person
我正在使用Rails 5,我看到这会自动在person_id
表中创建items
的索引。但是,根据这个SO thread,这不应该发生。
答案是否错误或是否已添加到Rails 5(或某些Rails 4.x版本)中?
答案 0 :(得分:2)
答案 1 :(得分:0)
不应该。
正如@Andrey所提到的,belongs_to
是references
的别名。如果您按照文档操作,则会在内部看到references
使用connection.add_reference
。在connection.add_reference
文档中,您可以看到options,并且可以看到index
:
:index
Add an appropriate index. Defaults to false.
See add_index for usage of this option.
因此,默认情况下,将索引添加到数据库的index
选项设置为false。您应该在references
。