From d160a86e09c461318db1d82134823fe0129cba6b Mon Sep 17 00:00:00 2001 From: Thorsten Eckel Date: Thu, 27 Apr 2017 11:20:57 +0200 Subject: [PATCH] Added 'Seedable' concern to (re-)seed models based on their seed files in /db/seeds . --- app/models/concerns/seedable.rb | 23 +++++++++++++++++++++++ app/models/overview.rb | 1 + 2 files changed, 24 insertions(+) create mode 100644 app/models/concerns/seedable.rb diff --git a/app/models/concerns/seedable.rb b/app/models/concerns/seedable.rb new file mode 100644 index 000000000..8f5e79ff4 --- /dev/null +++ b/app/models/concerns/seedable.rb @@ -0,0 +1,23 @@ +# Copyright (C) 2012-2016 Zammad Foundation, http://zammad-foundation.org/ +module Seedable + extend ActiveSupport::Concern + + # methods defined here are going to extend the class, not the instance of it + class_methods do + + def reseed + destroy_all + seed + end + + def seed + UserInfo.ensure_current_user_id do + load seedfile + end + end + + def seedfile + "#{Rails.root}/db/seeds/#{name.pluralize.underscore}.rb" + end + end +end diff --git a/app/models/overview.rb b/app/models/overview.rb index 8b4c284ce..2754d006c 100644 --- a/app/models/overview.rb +++ b/app/models/overview.rb @@ -3,6 +3,7 @@ class Overview < ApplicationModel include NotifiesClients include LatestChangeObserved + include Seedable load 'overview/assets.rb' include Overview::Assets