Handle not ready repos
[gitorious.git] / db / migrate / 20131210111917_create_messages_users.rb
blob3394e3e3fec0cdfde5018c507108767c4afa925d
1 class CreateMessagesUsers < ActiveRecord::Migration
2   def up
3     create_table :messages_users do |t|
4       t.belongs_to :message, null: false
5       t.belongs_to :recipient, null: false
6     end
8     execute <<-SQL
9     INSERT INTO messages_users (message_id, recipient_id)
10       SELECT messages.id, messages.recipient_id FROM messages;
11     SQL
13     remove_column :messages, :recipient_id
14   end
16   def down
17     add_column :messages, :recipient_id, :integer, null: false
19     execute <<-SQL
20     UPDATE messages AS m
21       LEFT JOIN messages_users AS mu
22         ON m.id = mu.message_id
23       SET m.recipient_id = mu.recipient_id;
24     SQL
26     drop_table :messages_users
27   end
28 end