mta*_*tay 30 ruby-on-rails link-to
我在RoR 3中使用link_to
当我像这样使用它时,它工作正常:
<%= link_to "Add to your favorites list",:controller =>
'favourite_companies', :action =>'create',
:company_id=>"#{@company.id}",
:company_name=>"#{@company.company_name}" %>
Run Code Online (Sandbox Code Playgroud)
但我也希望通过课程
但是,这对我不起作用.该课程有效,但它打破了链接.有任何想法吗?
<%= link_to "Add to your favorites list",{:controller =>
'favourite_companies', :action =>'create'},
:company_id=>"#{@company.id}",
:company_name=>"#{@company.company_name}",
:class=>"ui-button-text button_text"} %>
Run Code Online (Sandbox Code Playgroud)
edt*_*hix 61
<%= link_to "Add to your favorites list",{:controller =>
'favourite_companies', :action =>'create'},
:company_id=>"#{@company.id}",
:company_name=>"#{@company.company_name}",
:class=>"ui-button-text button_text"} %>
Run Code Online (Sandbox Code Playgroud)
试试这个
<%= link_to "Add to your favorites list", :controller =>
'favourite_companies', :action =>'create',
:company_id=>"#{@company.id}",
:company_name=>"#{@company.company_name}",
{ :class=>"ui-button-text button_text" } %>
Run Code Online (Sandbox Code Playgroud)
由于:class应该在:html_options(参考API)
link_to(body, url, html_options = {})
Run Code Online (Sandbox Code Playgroud)
cor*_*ard 32
做你所拥有的正确方法如下:
link_to "Foo", { URL_FOR PARAMS HERE }, :class => "bar"
Run Code Online (Sandbox Code Playgroud)
至于像这样手动设置控制器和动作,嗯,这是废话.Rails为您构建url帮助程序; 使用它们可以节省一些时间,精力并增加清晰度:
link_to "Foo", favourite_companies_path(@company), :method => :post
Run Code Online (Sandbox Code Playgroud)
你正在用字符串插值做的事情也是一个坏主意......它完全没有任何理由浪费和混乱.以下是相同的,只是更好:
link_to "Foo", :company_id => @company.id, :company_name => @company.name
Run Code Online (Sandbox Code Playgroud)
至于你的链接不起作用的原因,如果将它包装在div中,听起来好像你的HTML结构有问题,而不是link_to语法.
我正在使用link_to do-end块,因此上述解决方案对我不起作用.
如果要在标记中嵌入其他标记,则可以使用link_to do-end块.
<%= link_to favourite_companies_path(:company_id => @company.id, :another_url_param_here => "bar"), { :class => "ui-button-text button_text", :title=> "We can have more html attributes as well" } do %>
<i class="fa fa-star"></i>
<%= @company.company_name %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
在这种情况下它是
<%= link_to path(url_params), html_options = {} do %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
81993 次 |
| 最近记录: |