Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
2446252c
G
gitlab-foss
项目概览
李少辉-开发者
/
gitlab-foss
通知
15
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
G
gitlab-foss
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
2446252c
编写于
6月 29, 2017
作者:
D
Douglas Barbosa Alexandre
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Expires full_path cache after project is renamed
上级
37011af0
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
24 addition
and
2 deletion
+24
-2
app/models/concerns/routable.rb
app/models/concerns/routable.rb
+9
-2
app/models/project.rb
app/models/project.rb
+1
-0
spec/models/concerns/routable_spec.rb
spec/models/concerns/routable_spec.rb
+12
-0
spec/models/project_spec.rb
spec/models/project_spec.rb
+2
-0
未找到文件。
app/models/concerns/routable.rb
浏览文件 @
2446252c
...
...
@@ -103,8 +103,11 @@ module Routable
def
full_path
return
uncached_full_path
unless
RequestStore
.
active?
key
=
"routable/full_path/
#{
self
.
class
.
name
}
/
#{
self
.
id
}
"
RequestStore
[
key
]
||=
uncached_full_path
RequestStore
[
full_path_key
]
||=
uncached_full_path
end
def
expires_full_path_cache
RequestStore
.
delete
(
full_path_key
)
if
RequestStore
.
active?
end
def
build_full_path
...
...
@@ -135,6 +138,10 @@ module Routable
path_changed?
||
parent_changed?
end
def
full_path_key
@full_path_key
||=
"routable/full_path/
#{
self
.
class
.
name
}
/
#{
self
.
id
}
"
end
def
build_full_name
if
parent
&&
name
parent
.
human_name
+
' / '
+
name
...
...
app/models/project.rb
浏览文件 @
2446252c
...
...
@@ -963,6 +963,7 @@ class Project < ActiveRecord::Base
begin
gitlab_shell
.
mv_repository
(
repository_storage_path
,
"
#{
old_path_with_namespace
}
.wiki"
,
"
#{
new_path_with_namespace
}
.wiki"
)
send_move_instructions
(
old_path_with_namespace
)
expires_full_path_cache
@old_path_with_namespace
=
old_path_with_namespace
...
...
spec/models/concerns/routable_spec.rb
浏览文件 @
2446252c
...
...
@@ -132,6 +132,18 @@ describe Group, 'Routable' do
end
end
describe
'#expires_full_path_cache'
do
context
'with RequestStore active'
,
:request_store
do
it
'expires the full_path cache'
do
expect
(
group
).
to
receive
(
:uncached_full_path
).
twice
.
and_call_original
3
.
times
{
group
.
full_path
}
group
.
expires_full_path_cache
3
.
times
{
group
.
full_path
}
end
end
end
describe
'#full_name'
do
let
(
:group
)
{
create
(
:group
)
}
let
(
:nested_group
)
{
create
(
:group
,
parent:
group
)
}
...
...
spec/models/project_spec.rb
浏览文件 @
2446252c
...
...
@@ -1216,6 +1216,8 @@ describe Project, models: true do
expect
(
project
).
to
receive
(
:expire_caches_before_rename
)
expect
(
project
).
to
receive
(
:expires_full_path_cache
)
project
.
rename_repo
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录