Gar*_*nes 40 ruby-on-rails-3.2 turbolinks ruby-on-rails-4
只是想知道是否有一种方法可以直接在rails link_to帮助器中使用turbolinks,快速的谷歌搜索没有发现任何注意事项,这是我试图无济于事的类型.
<%= link_to 'Giraffe', giraffe_path(@giraffe), :data-no-turbolink => 'true' %>
<%= link_to 'Giraffe', giraffe_path(@giraffe), :data { :no-turbolink => 'true'} %>
Run Code Online (Sandbox Code Playgroud)
我知道你可以在这样的常规链接中做到这一点
<a data-no-turbolink='true' href="/giraffe-130">Giraffe</a>
Run Code Online (Sandbox Code Playgroud)
现在我只是将属性包含在链接周围的元素上,例如lis或div.
提前致谢.
Ger*_*haw 96
编辑Rails 5+: @ManishShrivastava正确地指出了Rails 5所需的不同语法,如Joseph的回答所示.
<%= link_to('Giraffe', @giraffe, data: { turbolinks: false }) %>
对于Rails 4及以下版本
最初我认为你需要为符号使用哈希火箭语法,但事实并非如此.您可以使用data:散列并在该散列内使用下划线的任何符号_都将转换为破折号-.
我认为大多数Rails开发人员更愿意看到以下内容(包括我自己,现在我知道更好):
<%= link_to('Giraffe', @giraffe, data: { no_turbolink: true }) %>
但以下也有效:
<%= link_to('Giraffe', @giraffe, 'data-no-turbolink' => true) %>
Jos*_* N. 69
Turbolinks 5使用略有不同的语法
<%= link_to "Foo", new_foo_path(@foo), data: { turbolinks: false } %>
Run Code Online (Sandbox Code Playgroud)
小智 16
您可以使用没有问题的符号来生成以下代码:
<a data-no-turbolink='true' href="/giraffe-130">Giraffe</a>
Run Code Online (Sandbox Code Playgroud)
只需执行以下操作:
<%= link_to 'Giraffe', giraffe_path(@giraffe),
:data => { :no_turbolink => true } %>
Run Code Online (Sandbox Code Playgroud)
注意::no_turbolink将成为no-turbolink,并且值将自动转换为JSON to_json,例如true使用"true".
小智 6
@Joseph你是对的,但只有很小的变化:
<%= link_to "Foo", new_foo_path(@foo), data: { turbolinks: 'false' } %>
Run Code Online (Sandbox Code Playgroud)
当我输入时turbolinks: false不能使用bool,只有当我使用string作为值时才有效turbolinks: 'false'.所以也许有人帮助这些信息;).