次のモデルを作成したい:
create_table "item_groups", force: true do |t|
t.string "name", null: false
t.integer "locale_id", null: false
t.boolean "translated", default: false, null: false
end
翻訳済み = true (Postgres) の場合にのみインデックスを作成する複数列インデックスを追加するにはどうすればよいですか。私はそれがこのように少し見えると思います:
add_index "item_groups", ["translated", "locale_id"], name: "item_groups_translated_locale_id", where: "translated = true", using: :btree
アップデート
Rails 4 を使用しています。上記の構文は正しいですか?
更新 2
構文を次のように変更しました
add_index "item_groups", ["translated", "locale_id"], name: "item_groups_translated_locale_id", where: "(translated IS TRUE)", using: :btree
以下の Edgars Jekabsons の回答とhttps://coderwall.com/p/9hxejgに関する詳細情報