Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
李少辉-开发者
gitlab-foss
提交
0af2ab18
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,发现更多精彩内容 >>
提交
0af2ab18
编写于
5月 08, 2018
作者:
S
Shinya Maeda
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Decouple to_params from AtomicInternalId concern
上级
632b87a8
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
15 addition
and
6 deletion
+15
-6
app/models/ci/pipeline.rb
app/models/ci/pipeline.rb
+1
-1
app/models/concerns/atomic_internal_id.rb
app/models/concerns/atomic_internal_id.rb
+1
-5
app/models/concerns/iid_routes.rb
app/models/concerns/iid_routes.rb
+9
-0
app/models/deployment.rb
app/models/deployment.rb
+1
-0
app/models/issue.rb
app/models/issue.rb
+1
-0
app/models/merge_request.rb
app/models/merge_request.rb
+1
-0
app/models/milestone.rb
app/models/milestone.rb
+1
-0
未找到文件。
app/models/ci/pipeline.rb
浏览文件 @
0af2ab18
...
@@ -14,7 +14,7 @@ module Ci
...
@@ -14,7 +14,7 @@ module Ci
belongs_to
:auto_canceled_by
,
class_name:
'Ci::Pipeline'
belongs_to
:auto_canceled_by
,
class_name:
'Ci::Pipeline'
belongs_to
:pipeline_schedule
,
class_name:
'Ci::PipelineSchedule'
belongs_to
:pipeline_schedule
,
class_name:
'Ci::PipelineSchedule'
has_internal_id
:iid
,
scope: :project
,
presence:
false
,
to_param:
false
,
init:
->
do
|
s
|
has_internal_id
:iid
,
scope: :project
,
presence:
false
,
init:
->
do
|
s
|
s
&
.
project
&
.
pipelines
&
.
maximum
(
:iid
)
||
s
&
.
project
&
.
pipelines
.
count
s
&
.
project
&
.
pipelines
&
.
maximum
(
:iid
)
||
s
&
.
project
&
.
pipelines
.
count
end
end
...
...
app/models/concerns/atomic_internal_id.rb
浏览文件 @
0af2ab18
...
@@ -25,7 +25,7 @@ module AtomicInternalId
...
@@ -25,7 +25,7 @@ module AtomicInternalId
extend
ActiveSupport
::
Concern
extend
ActiveSupport
::
Concern
module
ClassMethods
module
ClassMethods
def
has_internal_id
(
column
,
scope
:,
init
:,
presence:
true
,
to_param:
true
)
# rubocop:disable Naming/PredicateName
def
has_internal_id
(
column
,
scope
:,
init
:,
presence:
true
)
# rubocop:disable Naming/PredicateName
before_validation
:"ensure_
#{
column
}
!"
,
on: :create
before_validation
:"ensure_
#{
column
}
!"
,
on: :create
validates
column
,
presence:
presence
,
numericality:
true
validates
column
,
presence:
presence
,
numericality:
true
...
@@ -42,10 +42,6 @@ module AtomicInternalId
...
@@ -42,10 +42,6 @@ module AtomicInternalId
read_attribute
(
column
)
read_attribute
(
column
)
end
end
define_method
(
"to_param"
)
do
read_attribute
(
column
)
end
if
to_param
end
end
end
end
end
end
app/models/concerns/iid_routes.rb
0 → 100644
浏览文件 @
0af2ab18
module
IIDRoutes
##
# This automagically enforces all related routes to use `iid` instead of `id`
# If you want to use `iid` for some routes and `id` for other routes, this module should not to be included,
# instead you should define `iid` or `id` explictly at each route generators. e.g. pipeline_path(project.id, pipeline.iid)
def
to_param
iid
.
to_s
end
end
app/models/deployment.rb
浏览文件 @
0af2ab18
class
Deployment
<
ActiveRecord
::
Base
class
Deployment
<
ActiveRecord
::
Base
include
AtomicInternalId
include
AtomicInternalId
include
IIDRoutes
belongs_to
:project
,
required:
true
belongs_to
:project
,
required:
true
belongs_to
:environment
,
required:
true
belongs_to
:environment
,
required:
true
...
...
app/models/issue.rb
浏览文件 @
0af2ab18
...
@@ -2,6 +2,7 @@ require 'carrierwave/orm/activerecord'
...
@@ -2,6 +2,7 @@ require 'carrierwave/orm/activerecord'
class
Issue
<
ActiveRecord
::
Base
class
Issue
<
ActiveRecord
::
Base
include
AtomicInternalId
include
AtomicInternalId
include
IIDRoutes
include
Issuable
include
Issuable
include
Noteable
include
Noteable
include
Referable
include
Referable
...
...
app/models/merge_request.rb
浏览文件 @
0af2ab18
class
MergeRequest
<
ActiveRecord
::
Base
class
MergeRequest
<
ActiveRecord
::
Base
include
AtomicInternalId
include
AtomicInternalId
include
IIDRoutes
include
Issuable
include
Issuable
include
Noteable
include
Noteable
include
Referable
include
Referable
...
...
app/models/milestone.rb
浏览文件 @
0af2ab18
...
@@ -9,6 +9,7 @@ class Milestone < ActiveRecord::Base
...
@@ -9,6 +9,7 @@ class Milestone < ActiveRecord::Base
include
CacheMarkdownField
include
CacheMarkdownField
include
AtomicInternalId
include
AtomicInternalId
include
IIDRoutes
include
Sortable
include
Sortable
include
Referable
include
Referable
include
StripAttribute
include
StripAttribute
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录