diff options
author | Yves Senn <yves.senn@gmail.com> | 2014-06-20 08:56:30 +0200 |
---|---|---|
committer | Yves Senn <yves.senn@gmail.com> | 2014-06-26 22:03:49 +0200 |
commit | 8550ba307d712ebede0d0695b5172bb3e9af16c9 (patch) | |
tree | aa760c961323c5943401b3d4f1f1fbfa736ab812 /activerecord/lib | |
parent | 31e4c19331c9262574d354250675bba7dcf9dba2 (diff) | |
download | rails-8550ba307d712ebede0d0695b5172bb3e9af16c9.tar.gz rails-8550ba307d712ebede0d0695b5172bb3e9af16c9.tar.bz2 rails-8550ba307d712ebede0d0695b5172bb3e9af16c9.zip |
fk: raise for invalid :on_update / :on_delete values
Diffstat (limited to 'activerecord/lib')
-rw-r--r-- | activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb b/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb index b896bd25e4..e495304376 100644 --- a/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb +++ b/activerecord/lib/active_record/connection_adapters/abstract/schema_creation.rb @@ -104,9 +104,14 @@ FOREIGN KEY (#{quote_column_name(o.column)}) def action_sql(action, dependency) case dependency - when :nullify then "ON #{action} SET NULL" - when :cascade then "ON #{action} CASCADE" - when :restrict then "ON #{action} RESTRICT" + when :nullify then "ON #{action} SET NULL" + when :cascade then "ON #{action} CASCADE" + when :restrict then "ON #{action} RESTRICT" + else + raise ArgumentError, <<-MSG +'#{dependency}' is not supported for :on_update or :on_delete. +Supported values are: :nullify, :cascade, :restrict + MSG end end end |