app/controllers/erd/erd_controller.rb in erd-0.7.0 vs app/controllers/erd/erd_controller.rb in erd-0.8.0
- old
+ new
@@ -4,11 +4,12 @@
require 'ruby-graphviz'
require 'erd/application_controller'
module Erd
class ErdController < ::Erd::ApplicationController
- POSITIONS_JSON_FILE = Rails.root.join('tmp/erd_positions.json').freeze
+ POSITIONS_JSON_FILE = Rails.root.join('db/erd_positions.json').freeze
+ OLD_POSITIONS_JSON_FILE = Rails.root.join('db/erd_positions.json').freeze # for compatibility
def index
@erd = render_plain generate_plain, saved_positions
end
@@ -78,10 +79,16 @@
end
private
def saved_positions
- POSITIONS_JSON_FILE.exist? ? ActiveSupport::JSON.decode(POSITIONS_JSON_FILE.read) : {}
+ if POSITIONS_JSON_FILE.exist?
+ ActiveSupport::JSON.decode(POSITIONS_JSON_FILE.read)
+ elsif OLD_POSITIONS_JSON_FILE.exist?
+ ActiveSupport::JSON.decode(OLD_POSITIONS_JSON_FILE.read)
+ else
+ {}
+ end
end
def generate_plain
if Rails.respond_to?(:autoloaders) && Rails.autoloaders.try(:zeitwerk_enabled?)
Zeitwerk::Loader.eager_load_all