Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
76dc41ab
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
76dc41ab
编写于
1月 05, 2016
作者:
L
Lachlan Sylvester
提交者:
Lachlan Sylvester
1月 06, 2016
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix remove_index for postgresql when running legacy migrations
上级
0ff3e946
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
19 addition
and
2 deletion
+19
-2
activerecord/lib/active_record/migration/compatibility.rb
activerecord/lib/active_record/migration/compatibility.rb
+3
-2
activerecord/test/cases/migration/compatibility_test.rb
activerecord/test/cases/migration/compatibility_test.rb
+16
-0
未找到文件。
activerecord/lib/active_record/migration/compatibility.rb
浏览文件 @
76dc41ab
...
...
@@ -41,8 +41,9 @@ def index_exists?(table_name, column_name, options = {})
end
def
remove_index
(
table_name
,
options
=
{})
index_name
=
index_name_for_remove
(
table_name
,
options
)
execute
"DROP INDEX
#{
quote_column_name
(
index_name
)
}
ON
#{
quote_table_name
(
table_name
)
}
"
options
=
{
column:
options
}
unless
options
.
is_a?
(
Hash
)
options
[
:name
]
=
index_name_for_remove
(
table_name
,
options
)
super
(
table_name
,
options
)
end
private
...
...
activerecord/test/cases/migration/compatibility_test.rb
浏览文件 @
76dc41ab
...
...
@@ -21,6 +21,7 @@ def setup
teardown
do
connection
.
drop_table
:testings
rescue
nil
ActiveRecord
::
Migration
.
verbose
=
@verbose_was
ActiveRecord
::
SchemaMigration
.
delete_all
end
def
test_migration_doesnt_remove_named_index
...
...
@@ -37,6 +38,21 @@ def migrate(x)
assert_raise
(
StandardError
)
{
ActiveRecord
::
Migrator
.
new
(
:up
,
[
migration
]).
migrate
}
assert
connection
.
index_exists?
(
:testings
,
:foo
,
name:
"custom_index_name"
)
end
def
test_migration_does_remove_unnamed_index
connection
.
add_index
:testings
,
:bar
migration
=
Class
.
new
(
ActiveRecord
::
Migration
[
4.2
])
{
def
version
;
101
end
def
migrate
(
x
)
remove_index
:testings
,
:bar
end
}.
new
assert
connection
.
index_exists?
(
:testings
,
:bar
)
ActiveRecord
::
Migrator
.
new
(
:up
,
[
migration
]).
migrate
assert_not
connection
.
index_exists?
(
:testings
,
:bar
)
end
end
end
end
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录