Подтвердить что ты не робот

Как отключить turbolinks в Rails 5?

Это постоянная головная боль при работе с websockets, и она убивает мою производительность в дополнение к добавлению ошибок. Поскольку ActionCable - это вся причина, по которой я обновился, мне очень хотелось бы полностью избавиться от нее.

4b9b3361

Ответ 1

В принципе прямо из здесь. Это для Rails 4, но я считаю, что шаги одинаковы.

1) Удалите строку gem 'turbolinks' из вашего Gemfile.

2) Удалите //= require turbolinks из вашего приложения/активов/javascripts/application.js.

3) Удалите две пары "data-turbolinks-track" => true хеш-ключ/значение из вашего приложения /views/layouts/application.html.erb.

Изменить: по крайней мере, Rails 5.0.0 последний шаг должен ссылаться на "data-turbolinks-track" => "reload", а не на "data-turbolinks-track" => true. Благодаря @boddhisattva

Изменить: По крайней мере, Rails 4.2 вы можете сгенерировать проект без турбонаука. Просто используйте что-то вроде этого:

rails new my_app --skip-turbolinks

Ответ 2

Удаление //= require turbolinks из app/assets/javascripts/application.js похоже на трюк.

Я также удалил обе ссылки на turbolinks в app/views/layouts/application.html.erb

Ответ 3

Полностью удалив теги turbolinks из приложения. html.erb может сломать CSS и JS. добавьте эти строки вместо turbolinks, если загрузка CSS или JS не выполняется:

<%= stylesheet_link_tag "application", media: "all" %>
<%= javascript_include_tag "application" %>

Ответ 4

вы также можете сделать это при создании приложения rails с помощью;

rails new app name --skip-turbolinks