Ensure reports have an issue id and a user id
authorAndy Allan <git@gravitystorm.co.uk>
Wed, 14 Mar 2018 07:24:16 +0000 (15:24 +0800)
committerAndy Allan <git@gravitystorm.co.uk>
Wed, 14 Mar 2018 07:36:46 +0000 (15:36 +0800)
app/models/report.rb
db/migrate/20160822153055_create_issues_and_reports.rb
db/structure.sql

index 3507d699fadfd278cec9478988e27513921bf56d..816b8a42154ee5c1d8452b2584f620db4adf933d 100644 (file)
@@ -25,6 +25,8 @@ class Report < ActiveRecord::Base
   belongs_to :issue, :counter_cache => true
   belongs_to :user
 
+  validates :issue, :presence => true
+  validates :user, :presence => true
   validates :details, :presence => true
   validates :category, :presence => true
 
index ce2374c3118c3e95ce26d792d930943b8420f71b..cd0dc7a9f9cfd0998399b9fe797ef8316bf03d1b 100644 (file)
@@ -21,8 +21,8 @@ class CreateIssuesAndReports < ActiveRecord::Migration[5.0]
     add_index :issues, :updated_by
 
     create_table :reports do |t|
-      t.integer :issue_id
-      t.integer :user_id
+      t.integer :issue_id, :null => false
+      t.integer :user_id, :null => false
       t.text :details, :null => false
       t.string :category, :null => false
       t.timestamps :null => false
index eac2acaaf6a5fcca1c66e9132490f3ab0fe7cf0d..e41b0834f0b501223e2ece77ca8af9fd4875a8b8 100644 (file)
@@ -1064,8 +1064,8 @@ CREATE TABLE relations (
 
 CREATE TABLE reports (
     id integer NOT NULL,
-    issue_id integer,
-    user_id integer,
+    issue_id integer NOT NULL,
+    user_id integer NOT NULL,
     details text NOT NULL,
     category character varying NOT NULL,
     created_at timestamp without time zone NOT NULL,