diff options
author | Lukas Matt <lukas@zauberstuhl.de> | 2014-04-28 18:15:25 +0400 |
---|---|---|
committer | Lukas Matt <lukas@zauberstuhl.de> | 2014-05-15 15:23:44 +0400 |
commit | 3d9fceb479028b58f5c7302d767bfa2070b6a598 (patch) | |
tree | cbe8efc7ca9b26d0783287366b7d652231f9d6c6 | |
parent | 462a7116de711777794fb41b73934593124c5ad6 (diff) |
DB fix to work with existing entries
* added temp. default values for user_id and item_type
* changed model validation for item_type
-rw-r--r-- | app/models/report.rb | 3 | ||||
-rw-r--r-- | db/migrate/20140121132816_add_post_type_to_post_report.rb | 3 | ||||
-rw-r--r-- | db/migrate/20140422134627_change_user_id_type_to_integer.rb | 7 | ||||
-rw-r--r-- | db/schema.rb | 2 |
4 files changed, 10 insertions, 5 deletions
diff --git a/app/models/report.rb b/app/models/report.rb index 358704009..6ee562293 100644 --- a/app/models/report.rb +++ b/app/models/report.rb @@ -1,7 +1,8 @@ class Report < ActiveRecord::Base validates :user_id, presence: true validates :item_id, presence: true - validates :item_type, presence: true + validates :item_type, presence: true, :inclusion => { :in => %w(post comment), + :message => 'Type should match `post` or `comment`!'} validates :text, presence: true validate :entry_does_not_exist, :on => :create diff --git a/db/migrate/20140121132816_add_post_type_to_post_report.rb b/db/migrate/20140121132816_add_post_type_to_post_report.rb index be50eca0a..4d6686eea 100644 --- a/db/migrate/20140121132816_add_post_type_to_post_report.rb +++ b/db/migrate/20140121132816_add_post_type_to_post_report.rb @@ -1,5 +1,6 @@ class AddPostTypeToPostReport < ActiveRecord::Migration def change - add_column :post_reports, :post_type, :string, :null => false, :after => :post_id + add_column :post_reports, :post_type, :string, :null => false, :after => :post_id, :default => 'post' + change_column_default :post_reports, :post_type, nil end end diff --git a/db/migrate/20140422134627_change_user_id_type_to_integer.rb b/db/migrate/20140422134627_change_user_id_type_to_integer.rb index de21f2bd3..1f4918e8b 100644 --- a/db/migrate/20140422134627_change_user_id_type_to_integer.rb +++ b/db/migrate/20140422134627_change_user_id_type_to_integer.rb @@ -1,9 +1,12 @@ class ChangeUserIdTypeToInteger < ActiveRecord::Migration def up - change_column :reports, :user_id, :integer + remove_column :reports, :user_id + add_column :reports, :user_id, :integer, :null => false, :default => 1 + change_column_default :reports, :user_id, nil end def down - change_column :reports, :user_id, :string + remove_column :reports, :user_id + add_column :reports, :user_id, :string end end diff --git a/db/schema.rb b/db/schema.rb index 46d425636..8ae07e086 100644 --- a/db/schema.rb +++ b/db/schema.rb @@ -402,11 +402,11 @@ ActiveRecord::Schema.define(:version => 20140422134627) do create_table "reports", :force => true do |t| t.integer "item_id", :null => false t.string "item_type", :null => false - t.integer "user_id" t.boolean "reviewed", :default => false t.text "text" t.datetime "created_at", :null => false t.datetime "updated_at", :null => false + t.integer "user_id", :null => false end add_index "reports", ["item_id"], :name => "index_post_reports_on_post_id" |