summaryrefslogtreecommitdiff
path: root/app/models/route.rb
diff options
context:
space:
mode:
authorRegis <boudinot.regis@yahoo.com>2017-01-25 14:01:44 -0700
committerRegis <boudinot.regis@yahoo.com>2017-01-25 14:01:44 -0700
commitd4b2f4dd8332701c2df0003a213b34abe0163599 (patch)
treeec868cb769c6656bbcb4b42b65710ab72717598e /app/models/route.rb
parent5348985015cd0f3163ed7617eb86df63396db16b (diff)
parent112f9710b65fe830a058366cde1734a2928764de (diff)
downloadgitlab-ce-pipeline_index_vue_error_state.tar.gz
Merge branch 'master' into pipeline_index_vue_error_statepipeline_index_vue_error_state
Diffstat (limited to 'app/models/route.rb')
-rw-r--r--app/models/route.rb7
1 files changed, 4 insertions, 3 deletions
diff --git a/app/models/route.rb b/app/models/route.rb
index caf596efa79..dd171fdb069 100644
--- a/app/models/route.rb
+++ b/app/models/route.rb
@@ -8,15 +8,16 @@ class Route < ActiveRecord::Base
presence: true,
uniqueness: { case_sensitive: false }
- after_update :rename_children, if: :path_changed?
+ after_update :rename_descendants, if: :path_changed?
- def rename_children
+ def rename_descendants
# We update each row separately because MySQL does not have regexp_replace.
# rubocop:disable Rails/FindEach
Route.where('path LIKE ?', "#{path_was}/%").each do |route|
# Note that update column skips validation and callbacks.
- # We need this to avoid recursive call of rename_children method
+ # We need this to avoid recursive call of rename_descendants method
route.update_column(:path, route.path.sub(path_was, path))
end
+ # rubocop:enable Rails/FindEach
end
end