Rails 关于 link_to

kouunn · 2016年05月15日 · 最后由 kouunn 回复于 2016年05月17日 · 2385 次阅读
<a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">

                     Dropdown 

                   <span class="caret"></span>


                 </a>

请教一下各位,这段 html 如何用 link_to 写啊

<%= link_to "#", class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false" do %>
  Dropdown 
 <span class="caret"></span>
<%end%>

好奇,为啥不直接用 html

#1 楼 @small_fish__ 这么写会报错,主要是 data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false"这部分不知道如何写 用 html_option 也有问题

#2 楼 @kouunn 不是等号,是:,比如

'data-toggle': 'dropdown'

差不多就是这样吧

<%= link_to '#', class: 'dropdown-toggle', 'data-toggle': 'dropdown', role: 'button', 'aria-haspopup': 'true', 'aria-expanded': 'false' do %>
Dropdown
<span class="caret"></span>
<% end %>

我觉得你只是不知道 do end 的用法而已,其它写法都和普通 link_to 类似啊🙈

#4 楼 @classicalliu 受教了 谢谢你啊 这次没问题了 do end 用法具体说说 我学习一下

#5 楼 @kouunn

<%= link_to(@profile) do %>
  <strong><%= @profile.name %></strong> -- <span>Check it out!</span>
<% end %>
# => <a href="/profiles/1">
       <strong>David</strong> -- <span>Check it out!</span>
     </a>

rails 的 api 文档上摘抄的,遇到这种问题先查 api 文档🌚

#6 楼 @classicalliu 'data-toggle': 'dropdown' 前面可以加引号 没有想到 api 已经看过了 也用过这个 block 关键是 我试的前面没加引号

可以这样啊 aria: {haspopup: 'true', expanded: 'false'}

#2 楼 @kouunn 对的,直接改成 options,我顺手打的,没注意,你使用字符作为 key 就好了 比如:foo = { 'data-toggle': 'dropdown' } 注意冒号与 key 之间不能有空格

#7 楼 @kouunn 因为 symbol 中间不能有 - 啊,所以要用字符串…… 最原始的就是

'data-toggle' => 'dropdown'

你也可以参照 @xiaohesong 的写法

需要 登录 后方可回复, 如果你还没有账号请 注册新账号