Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
张重言
rails
提交
e82a3ba2
R
rails
项目概览
张重言
/
rails
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rails
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
e82a3ba2
编写于
10月 23, 2013
作者:
C
Charlie Somerville
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
cache a class that is pre-included with the master helper module
上级
8837faac
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
17 addition
and
2 deletion
+17
-2
actionpack/lib/action_controller/helpers.rb
actionpack/lib/action_controller/helpers.rb
+17
-2
未找到文件。
actionpack/lib/action_controller/helpers.rb
浏览文件 @
e82a3ba2
...
...
@@ -69,6 +69,22 @@ class << self
# N/A | Carolina Railhaws Training Workshop
#
module
ClassMethods
# To avoid extending an instance of ActionView::Base with the master_helper_module
# every single time we render a view, we're caching a class that has
# master_helper_module already included that we can just instantiate.
def
master_helper_class
return
@master_helper_class
if
@master_helper_class
@master_helper_class
=
Class
.
new
(
ActionView
::
Base
).
tap
do
|
klass
|
klass
.
send
(
:include
,
master_helper_module
)
end
end
def
master_helper_module
=
(
mod
)
write_inheritable_attribute
(
:master_helper_module
,
mod
)
@master_helper_class
=
nil
end
# Makes all the (instance) methods in the helper module available to templates rendered through this controller.
# See ActionView::Helpers (link:classes/ActionView/Helpers.html) for more about making your own helper modules
# available to the templates.
...
...
@@ -182,8 +198,7 @@ def helper_attr(*attrs)
# Provides a proxy to access helpers methods from outside the view.
def
helpers
unless
@helper_proxy
@helper_proxy
=
ActionView
::
Base
.
new
@helper_proxy
.
extend
master_helper_module
@helper_proxy
=
master_helper_class
.
new
else
@helper_proxy
end
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录