Class: CreateMakeVoteableTables

Inherits:
ActiveRecord::Migration
  • Object
show all
Defined in:
lib/generators/make_voteable/templates/migration.rb

Class Method Summary collapse

Class Method Details

.downObject



18
19
20
21
22
23
24
# File 'lib/generators/make_voteable/templates/migration.rb', line 18

def self.down
  remove_index :votings, :column => [:voteable_type, :voteable_id]
  remove_index :votings, :column => [:voter_type, :voter_id]
  remove_index :votings, :name => "unique_voters"
  
  drop_table :votings
end

.upObject



2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# File 'lib/generators/make_voteable/templates/migration.rb', line 2

def self.up
   create_table :votings do |t|
     t.string :voteable_type
     t.integer :voteable_id
     t.string :voter_type
     t.integer :voter_id
     t.boolean :up_vote, :null => false

     t.timestamps
  end

  add_index :votings, [:voteable_type, :voteable_id]
  add_index :votings, [:voter_type, :voter_id]
  add_index :votings, [:voteable_type, :voteable_id, :voter_type, :voter_id], :name => "unique_voters", :unique => true
end