Skip to content

Commit b007666

Browse files
committed
Fix #282 with error "foreign_keys is not implemented"
1 parent a0682a4 commit b007666

File tree

2 files changed

+4
-1
lines changed

2 files changed

+4
-1
lines changed

lib/annotate/annotate_models.rb

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -288,7 +288,9 @@ def get_foreign_key_info(klass, options={})
288288
fk_info = "#\n# Foreign Keys\n#\n"
289289
end
290290

291-
foreign_keys = klass.connection.respond_to?(:foreign_keys) ? klass.connection.foreign_keys(klass.table_name) : []
291+
return "" unless klass.connection.supports_foreign_keys? && klass.connection.respond_to?(:foreign_keys)
292+
293+
foreign_keys = klass.connection.foreign_keys(klass.table_name)
292294
return "" if foreign_keys.empty?
293295

294296
max_size = foreign_keys.collect{|fk| fk.name.size}.max + 1

spec/annotate/annotate_models_spec.rb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ def mock_connection(indexes = [], foreign_keys = [])
1717
double("Conn",
1818
:indexes => indexes,
1919
:foreign_keys => foreign_keys,
20+
:supports_foreign_keys? => true,
2021
)
2122
end
2223

0 commit comments

Comments
 (0)