From 0e21d648908ac453b5f51eef237b7e9fefaf5e9c Mon Sep 17 00:00:00 2001 From: Matt Rogers Date: Sat, 3 Nov 2018 15:57:14 -0500 Subject: [PATCH] Convert to ApplicationRecord Rails 5 requires the use of this superclass for all database backed model objects now. --- app/models/application_record.rb | 3 +++ app/models/attachment.rb | 2 +- app/models/context.rb | 2 +- app/models/dependency.rb | 2 +- app/models/note.rb | 2 +- app/models/preference.rb | 2 +- app/models/project.rb | 2 +- app/models/recurring_todo.rb | 2 +- app/models/tag.rb | 2 +- app/models/tagging.rb | 2 +- app/models/todo.rb | 2 +- app/models/user.rb | 2 +- 12 files changed, 14 insertions(+), 11 deletions(-) create mode 100644 app/models/application_record.rb diff --git a/app/models/application_record.rb b/app/models/application_record.rb new file mode 100644 index 00000000..10a4cba8 --- /dev/null +++ b/app/models/application_record.rb @@ -0,0 +1,3 @@ +class ApplicationRecord < ActiveRecord::Base + self.abstract_class = true +end diff --git a/app/models/attachment.rb b/app/models/attachment.rb index 564a0ed6..236a7249 100644 --- a/app/models/attachment.rb +++ b/app/models/attachment.rb @@ -1,4 +1,4 @@ -class Attachment < ActiveRecord::Base +class Attachment < ApplicationRecord belongs_to :todo, touch: true has_attached_file :file, diff --git a/app/models/context.rb b/app/models/context.rb index deadca46..7cc0cf2a 100644 --- a/app/models/context.rb +++ b/app/models/context.rb @@ -1,4 +1,4 @@ -class Context < ActiveRecord::Base +class Context < ApplicationRecord has_many :todos, -> { order("todos.due IS NULL, todos.due ASC, todos.created_at ASC").includes(:project) }, :dependent => :delete_all has_many :recurring_todos, :dependent => :delete_all diff --git a/app/models/dependency.rb b/app/models/dependency.rb index 22e144b7..3a89bd18 100644 --- a/app/models/dependency.rb +++ b/app/models/dependency.rb @@ -1,4 +1,4 @@ -class Dependency < ActiveRecord::Base +class Dependency < ApplicationRecord # touch to make sure todo caches for predecessor and successor are invalidated diff --git a/app/models/note.rb b/app/models/note.rb index ba663114..5ba0750a 100644 --- a/app/models/note.rb +++ b/app/models/note.rb @@ -1,4 +1,4 @@ -class Note < ActiveRecord::Base +class Note < ApplicationRecord belongs_to :user belongs_to :project diff --git a/app/models/preference.rb b/app/models/preference.rb index d5b663a2..df5e7d18 100644 --- a/app/models/preference.rb +++ b/app/models/preference.rb @@ -1,4 +1,4 @@ -class Preference < ActiveRecord::Base +class Preference < ApplicationRecord belongs_to :user belongs_to :sms_context, :class_name => 'Context' diff --git a/app/models/project.rb b/app/models/project.rb index f702ce71..c5553f70 100644 --- a/app/models/project.rb +++ b/app/models/project.rb @@ -1,4 +1,4 @@ -class Project < ActiveRecord::Base +class Project < ApplicationRecord has_many :todos, -> {order("todos.due IS NULL, todos.due ASC, todos.created_at ASC")}, dependent: :delete_all has_many :notes, -> {order "created_at DESC"}, dependent: :delete_all has_many :recurring_todos diff --git a/app/models/recurring_todo.rb b/app/models/recurring_todo.rb index 53248c16..e9f09ff3 100644 --- a/app/models/recurring_todo.rb +++ b/app/models/recurring_todo.rb @@ -1,4 +1,4 @@ -class RecurringTodo < ActiveRecord::Base +class RecurringTodo < ApplicationRecord belongs_to :context belongs_to :project belongs_to :user diff --git a/app/models/tag.rb b/app/models/tag.rb index 5c54575f..aa193c20 100644 --- a/app/models/tag.rb +++ b/app/models/tag.rb @@ -1,4 +1,4 @@ -class Tag < ActiveRecord::Base +class Tag < ApplicationRecord has_many :taggings has_many :taggable, :through => :taggings diff --git a/app/models/tagging.rb b/app/models/tagging.rb index 82961c94..a89d1e10 100644 --- a/app/models/tagging.rb +++ b/app/models/tagging.rb @@ -1,7 +1,7 @@ # The Tagging join model. -class Tagging < ActiveRecord::Base +class Tagging < ApplicationRecord belongs_to :tag belongs_to :taggable, :polymorphic => true, :touch => true diff --git a/app/models/todo.rb b/app/models/todo.rb index f24c34dc..c69bb69c 100644 --- a/app/models/todo.rb +++ b/app/models/todo.rb @@ -1,4 +1,4 @@ -class Todo < ActiveRecord::Base +class Todo < ApplicationRecord MAX_DESCRIPTION_LENGTH = 300 MAX_NOTES_LENGTH = 60000 diff --git a/app/models/user.rb b/app/models/user.rb index 38838dca..df05ccbe 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -1,7 +1,7 @@ require 'digest/sha1' require 'bcrypt' -class User < ActiveRecord::Base +class User < ApplicationRecord # Virtual attribute for the unencrypted password attr_accessor :password