diff options
Diffstat (limited to 'db')
-rw-r--r-- | db/migrate/113_add_external_fields_to_info_requests.rb | 1 | ||||
-rw-r--r-- | db/migrate/116_add_censor_rule_regexp.rb | 9 | ||||
-rw-r--r-- | db/migrate/117_create_sessions.rb | 16 | ||||
-rw-r--r-- | db/migrate/118_remove_sessions_again.rb | 16 | ||||
-rw-r--r-- | db/migrate/20120822145640_correct_external_request_constraint.rb | 15 |
5 files changed, 57 insertions, 0 deletions
diff --git a/db/migrate/113_add_external_fields_to_info_requests.rb b/db/migrate/113_add_external_fields_to_info_requests.rb index 3aea57766..1ad7634ff 100644 --- a/db/migrate/113_add_external_fields_to_info_requests.rb +++ b/db/migrate/113_add_external_fields_to_info_requests.rb @@ -4,6 +4,7 @@ class AddExternalFieldsToInfoRequests < ActiveRecord::Migration add_column :info_requests, :external_user_name, :string, :null => true add_column :info_requests, :external_url, :string, :null => true + # NB This is corrected in 20120822145640 if ActiveRecord::Base.connection.adapter_name == "PostgreSQL" execute "ALTER TABLE info_requests ADD CONSTRAINT info_requests_external_ck CHECK ( (user_id is null) = (external_url is not null) and (external_user_name is not null or external_url is null) )" end diff --git a/db/migrate/116_add_censor_rule_regexp.rb b/db/migrate/116_add_censor_rule_regexp.rb new file mode 100644 index 000000000..d9c4664cd --- /dev/null +++ b/db/migrate/116_add_censor_rule_regexp.rb @@ -0,0 +1,9 @@ +class AddCensorRuleRegexp < ActiveRecord::Migration + def self.up + add_column :censor_rules, :regexp, :boolean + end + + def self.down + remove_column :censor_rules, :regexp + end +end diff --git a/db/migrate/117_create_sessions.rb b/db/migrate/117_create_sessions.rb new file mode 100644 index 000000000..4ccc353b1 --- /dev/null +++ b/db/migrate/117_create_sessions.rb @@ -0,0 +1,16 @@ +class CreateSessions < ActiveRecord::Migration + def self.up + create_table :sessions do |t| + t.string :session_id, :null => false + t.text :data + t.timestamps + end + + add_index :sessions, :session_id + add_index :sessions, :updated_at + end + + def self.down + drop_table :sessions + end +end diff --git a/db/migrate/118_remove_sessions_again.rb b/db/migrate/118_remove_sessions_again.rb new file mode 100644 index 000000000..dc5a63df7 --- /dev/null +++ b/db/migrate/118_remove_sessions_again.rb @@ -0,0 +1,16 @@ +class RemoveSessionsAgain < ActiveRecord::Migration + def self.up + drop_table :sessions + end + + def self.down + create_table :sessions do |t| + t.string :session_id, :null => false + t.text :data + t.timestamps + end + + add_index :sessions, :session_id + add_index :sessions, :updated_at + end +end diff --git a/db/migrate/20120822145640_correct_external_request_constraint.rb b/db/migrate/20120822145640_correct_external_request_constraint.rb new file mode 100644 index 000000000..6902f3cb2 --- /dev/null +++ b/db/migrate/20120822145640_correct_external_request_constraint.rb @@ -0,0 +1,15 @@ +class CorrectExternalRequestConstraint < ActiveRecord::Migration + def self.up + if ActiveRecord::Base.connection.adapter_name == "PostgreSQL" + execute "ALTER TABLE info_requests DROP CONSTRAINT info_requests_external_ck" + execute "ALTER TABLE info_requests ADD CONSTRAINT info_requests_external_ck CHECK ( (user_id is null) = (external_url is not null) and (external_url is not null or external_user_name is null) )" + end + end + + def self.down + if ActiveRecord::Base.connection.adapter_name == "PostgreSQL" + execute "ALTER TABLE info_requests DROP CONSTRAINT info_requests_external_ck" + execute "ALTER TABLE info_requests ADD CONSTRAINT info_requests_external_ck CHECK ( (user_id is null) = (external_url is not null) and (external_user_name is not null or external_url is null) )" + end + end +end |