【问题标题】:Preferred Rails syntax for adding an index?添加索引的首选 Rails 语法?
【发布时间】:2011-03-26 17:14:33
【问题描述】:

通过迁移向 Rails 中的表添加索引的首选语法是什么?

【问题讨论】:

    标签: ruby-on-rails indexing syntax migration


    【解决方案1】:

    首选语法是:

    add_index(table_name, column_names, options)
    

    文档here 中有完整的文章。要查找相关部分,只需执行“Ctrl-F”(或您的操作系统上的等效项)搜索“index”。第一个结果在您要阅读的部分中。

    您可以稍后在单独的迁移中添加索引,如post 所示。它有点过时了,但想法仍然是一样的。例如,最常见的“选项”是:name:unique

     { :name => "users_name_index", :unique => true }
    

    注意:大括号很重要,因为选项是散列。

    【讨论】:

    • 大括号仅在哈希不是方法的最后一个参数时才重要。如果它们是最后一个,您可以简单地内联它们:example(:foo => 'bar') 相当于 example({ :foo => 'bar' })example(1, :foo => 'bar') 相当于 example(1, { :foo => 'bar' })
    【解决方案2】:

    您可以在迁移中简单地使用 add_index 命令:

    add_index(:table_name, :column_name)
    

    【讨论】:

      猜你喜欢
      • 2013-03-30
      • 1970-01-01
      • 2016-03-02
      • 1970-01-01
      • 2011-12-24
      • 1970-01-01
      • 1970-01-01
      • 2018-06-28
      • 1970-01-01
      相关资源
      最近更新 更多