From 920f0159cab8f4e21db4bb1ea9e06d68f7235634 Mon Sep 17 00:00:00 2001 From: Sean McGivern Date: Thu, 6 Jul 2017 12:38:29 +0100 Subject: [PATCH] Fix shorter route helpers in production environment I don't know exactly when Rails picks each module to use, but this seems to be used by `app` in the console (for instance, `app.project_path` would fail before, but works now). --- config/application.rb | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/config/application.rb b/config/application.rb index a9a961d7520..c4701504fab 100644 --- a/config/application.rb +++ b/config/application.rb @@ -166,8 +166,9 @@ module Gitlab config.after_initialize do Rails.application.reload_routes! + named_routes_set = Gitlab::Application.routes.named_routes project_url_helpers = Module.new do - Gitlab::Application.routes.named_routes.helper_names.each do |name| + named_routes_set.helper_names.each do |name| next unless name.include?('namespace_project') define_method(name.sub('namespace_project', 'project')) do |project, *args| @@ -176,6 +177,9 @@ module Gitlab end end + named_routes_set.url_helpers_module.include project_url_helpers + named_routes_set.url_helpers_module.extend project_url_helpers + Gitlab::Routing.url_helpers.include project_url_helpers Gitlab::Routing.url_helpers.extend project_url_helpers