"В PagesController#home отсутствует шаблон для форматов запроса: text/html" ПРИМЕЧАНИЕ! Если не указано иное, Rails ожидает, что действие отобразит шаблон с тем же именем, который содержится в папке, названной в честь его контроллера. Если этот контроллер является API, отвечающим с кодом 204 (Нет контента), который не требует шаблона, то эта ошибка будет возникать при попытке доступа к нему через браузер, поскольку мы ожидаем, что для таких запросов будет отображаться HTML-шаблон. Если это так, продолжайте.

Однако у меня есть файл home.html.erb:

enter image description here

Pages_controller.rb

class PagesController < ApplicationController
  def home
  end

  def about
  end
end

Routes.rb

Rails.application.routes.draw do
  get "home", to: "pages#home", as: "home"
  get "about", to: "pages#about", as: "about"

  root "pages#home"
end

В чем может быть проблема?

1
blackhole 1 Фев 2022 в 09:15
В том, что здесь написано, нет ничего особенно плохого. Вы уверены, что это идентично вашему фактическому коду?
 – 
engineersmnky
2 Фев 2022 в 00:41

3 ответа

Вы перезапустили сервер после добавления маршрутов в config/routes.rb? Вам необходимо перезапустить сервер после внесения любых изменений в каталог config.

0
A.A. F 1 Фев 2022 в 11:50
Это не дает ответа на вопрос. Чтобы подвергнуть критике или запросить разъяснения у автора, оставьте комментарий под его публикацией. – Из обзора
 – 
radrow
3 Фев 2022 в 13:17
1
@radrow: это похоже на ответ для меня. По общему признанию, это довольно стандартный метод устранения неполадок, который, как нам хотелось бы думать, опробовали большинство пользователей Stack Overflow, прежде чем публиковать вопрос. Но это также то, что легко упустить из виду, особенно если необходимость перезапуска сервера не установлена.
 – 
Jeremy Caney
5 Фев 2022 в 04:17

Вы пытались вызвать его явно? Если это не работает, обязательно перезагрузите все и повторите попытку.

def home
  respond_to do |format|
    format.html { render :home }
end
0
Marelons 1 Фев 2022 в 12:40

Вы используете Powershell или командную строку для запуска Rails Server? У меня была именно эта проблема, когда я использовал Powershell для сервера rails, но если я запускал сервер rails с помощью командной строки, точно такой же код работал нормально.

0
user19588175 20 Июл 2022 в 17:50