]> git.openstreetmap.org Git - rails.git/blob - db/migrate/20150516073616_create_issues_and_reports.rb
Proper implementation of report strings + cleaning up
[rails.git] / db / migrate / 20150516073616_create_issues_and_reports.rb
1 require "migrate"
2
3 class CreateIssuesAndReports < ActiveRecord::Migration
4   def change
5     create_table :issues do |t|
6       t.string :reportable_type, :null => false
7       t.integer :reportable_id, :null => false
8       t.integer :reported_user_id, :null => false
9       t.integer :status
10       t.datetime :resolved_at
11       t.integer :resolved_by
12       t.datetime :created_at
13       t.datetime :updated_at
14
15       t.timestamps null: false
16     end
17
18     add_foreign_key :issues, :users, :column => :reported_user_id,:name => "issues_reported_user_id_fkey"
19
20     add_index :issues, :reported_user_id
21     add_index :issues, [:reportable_id, :reportable_type]
22
23     create_table :reports do |t|
24       t.integer :issue_id
25       t.integer :reporter_user_id
26       t.text :details
27       t.datetime :created_at
28       t.datetime :updated_at
29
30       t.timestamps null: false
31     end
32
33     add_foreign_key :reports, :issues, :name => "reports_issue_id_fkey"
34     add_foreign_key :reports, :users,:column => :reporter_user_id, :name => "reports_reporter_user_id_fkey"
35
36     add_index :reports, :reporter_user_id
37     add_index :reports, :issue_id
38     
39   end
40 end