Приложение Rail 6, переход по ссылке приводит меня на пустую страницу и перенаправляет только в том случае, если вы ссылаетесь

#ruby-on-rails #ruby-on-rails-6

#ruby-on-rails #ruby-on-rails-6

Вопрос:

Все, я сталкиваюсь с проблемой маршрутизации, когда я нажимаю на ссылку, которую я переношу на пустую страницу, и только когда я нажимаю ссылку в своем браузере, я перехожу на перенаправленную страницу.

В моем приложении Navbar: введите описание изображения здесь

   <%= link_to "Sign up", new_user_registration_path, class: "dropdown-item"  %>
              
  <div class="dropdown-divider"></div>
  <%= link_to "Login", new_user_session_path, class: "dropdown-item"   %>
 

Routes
devise_for: пользователи

Если я нажму на login, я перейду на пустую страницу

введите описание изображения здесь

Если я жестко обновляю (F5), я перенаправляюсь. Это я использую devise Gem

введите описание изображения здесь

Любые указатели будут полезны.. Заранее спасибо…

Комментарии:

1. Странно. Пожалуйста, удалите класс: ‘выпадающий-элемент’, возможно, bootstrap мешает ему. Если нет. проверьте вкладку «Сеть» в консоли браузера и посмотрите, какой запрос она выполняет.

2. У вас включены turbolinks?

3. В прошлом у меня была эта проблема с Turbolinks, можете ли вы попробовать добавить это в sessions/new представление и посмотреть, работает ли это? <% content_for :head do %> <meta name="turbolinks-visit-control" content="reload" /> <% end %> Вам также нужно будет добавить yield(:head) в свой файл макета до конца </head> .

4. Первая страница, похоже, не пуста. Отображается текст «2021».

5. Я пробовал это, но это не сработало. Проблема, которую я обнаружил, заключается в том, что из-за его пользовательского усиления у меня были частичные верхний и нижний колонтитулы, а html-код на самой странице ссылался на нижний колонтитул, а у другого был заголовок, поэтому он просто перенаправляет на 2021, но мне пришлось обновить, чтобы перенаправить на страницу.

Ответ №1:

Вы не будете перенаправлены после того, как нажмете обновить. Разработка маршрутов работает нормально, потому userssign_in что после нажатия на ссылку для входа вы попадаете на правильный URL-адрес. Итак, причина, по которой ваша страница не загружается, заключается не в разработке, а в том, что на странице входа в систему что-то мешает ее отображению. Открытие консоли браузера и проверка ошибок JS могут дать вам несколько советов.

Комментарии:

1. я вижу это предупреждениересурс demoproject-randi2160920490.codeanyapp.com/assets /… был предварительно загружен с помощью предварительной загрузки ссылки, но не использовался в течение нескольких секунд после события загрузки окна. Пожалуйста, убедитесь, что оно имеет соответствующее as значение и предварительно загружено намеренно.

2. @Randymangal Вы работаете с пользовательским шаблоном начальной загрузки, копируете HTML-код из шаблона и вставляете его на существующие страницы вместе с разделами head и body. Посмотрите на свою HTML-структуру, у вас есть суп из нескольких head разделов и body разделов. Предполагается, что у вас должно быть по одному для каждого. Переработайте структуру своей страницы, чтобы она имела правильную структуру HTML и загружала только те ресурсы, которые вам нужны. w3schools.com/html/html_intro.asp

3. Отличный указатель, это потому, что у меня есть более одного нижнего колонтитула и тела на странице и в файле html.erb приложения Спасибо