Und*_*ion 1 ruby ruby-on-rails block helper link-to
我需要一个帮助器,它生成一个包含在<li>
包含活动类的链接.
没有支持块这很容易:
def nav_item(*args, &block)
url = args[1]
clazz = 'active' if current_page?(url)
content_tag(:li, :class => clazz) do
link_to(*args)
end
end
Run Code Online (Sandbox Code Playgroud)
但就像link_to
我希望我的助手支持用于定义内容的块一样.使用link_to,我可以这样做:
那么如何在我的助手中支持相同的内容呢?
我需要做的就是将块传递给link_to
.我目前的尝试
def nav_item(*args, &block)
url = if block_given?
args.first
else
args[1]
end
clazz = 'active' if current_page?(url)
content_tag(:li, :class => clazz) do
if block_given?
# What goes here?
else
link_to(*args)
end
end
end
Run Code Online (Sandbox Code Playgroud)
您可以将块传递给link_to
最后一个arg.像这样:
def nav_item(*args, &block)
url = if block_given?
args.first
else
args[1]
end
clazz = 'active' if current_page?(url)
content_tag(:li, :class => clazz) do
if block
link_to(*args, &block)
else
link_to(*args)
end
end
end
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
179 次 |
最近记录: |