Turbolinks, кажется, загружает мои страницы дважды

Сначала я этого не заметил, но мое приложение вело себя странно: каждый раз, когда я нажимал на ссылку, сгенерированную link_to, страница загружалась дважды.

Действительно, в консоли:

Started GET "/registrations" for 127.0.0.1 at 2013-11-18 16:58:30 -0800
Processing by RegistrationsController#index as HTML
  User Load (0.3ms)  SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1  [["id", 1]]
  Registration Load (0.4ms)  SELECT "registrations".* FROM "registrations"
  Rendered registrations/index.html.erb within layouts/application (2.7ms)
  Rendered layouts/_alerts.html.erb (0.1ms)
Completed 200 OK in 7ms (Views: 5.4ms | ActiveRecord: 0.7ms)


Started GET "/registrations" for 127.0.0.1 at 2013-11-18 16:58:41 -0800
Processing by RegistrationsController#index as HTML
  User Load (0.5ms)  SELECT "users".* FROM "users" WHERE "users"."id" = $1 LIMIT 1  [["id", 1]]
  Registration Load (0.3ms)  SELECT "registrations".* FROM "registrations"
  Rendered registrations/index.html.erb within layouts/application (1.9ms)
  Rendered layouts/_alerts.html.erb (0.1ms)
Completed 200 OK in 7ms (Views: 4.5ms | ActiveRecord: 0.8ms)

Я везде искал решение, но люди продолжали ссылаться на проблему с предварительно скомпилированными активами в среде разработки, что не относится ко мне.

Я «исправил» проблему, удалив турбоссылки из моего приложения Rails 4, но это действительно обходной путь «грубой силы».

Кто-нибудь здесь оказался в такой же ситуации?

Для справки, это был мой <head> до удаления турболинков:

<head>
  <title>Title</title>
      <%= stylesheet_link_tag    "application", media: "all", "data-turbolinks-track" => true %>
    <%= stylesheet_link_tag  "//netdna.bootstrapcdn.com/bootstrap/3.0.0/css/bootstrap.min.css", media: "all" %>
      <%= javascript_include_tag "application", "data-turbolinks-track" => true %>
    <%= javascript_include_tag "//netdna.bootstrapcdn.com/bootstrap/3.0.0/js/bootstrap.min.js" %>
      <%= csrf_meta_tags %>
</head>

person Kevin Smouts    schedule 19.11.2013    source источник
comment
у вас есть Javascript в вашем приложении?   -  person King'ori Maina    schedule 15.12.2013


Ответы (1)


Интересно, может ли это быть связано с этим билетом?

РЕДАКТИРОВАТЬ: Это было решением. Это известная ошибка хрома. Обновление драгоценного камня turbolinks поможет (это было исправлено в версии 1.3.1).

Решение: bundle update turbolinks

person Kevin Smouts    schedule 19.11.2013
comment
ну, bundle update turbolinks (в этом я настоятельно рекомендую не запускать голое пакетное обновление: оно обновляет все драгоценные камни, и редко бывает хорошей идеей все сразу. - person Jesse Wolgamott; 19.11.2013
comment
Хм, кажется, у меня turbolinks 2.2.0, и проблема все еще сохраняется. Хотя это определенно ошибка Chrome, отлично работает в Firefox. - person Kasperi; 21.01.2014