Шаблон отсутствует - PullRequest
       1

Шаблон отсутствует

18 голосов
/ 27 июня 2011

В настоящее время работаю над проектом, и столкнулся с проблемой, с которой я никогда не сталкивался раньше.В настоящее время делаю страницу входа в систему, чтобы попросить пользователя зарегистрироваться.Раньше у меня был неопределенный метод `name'error, а затем я понял, что метод не называется name, он назывался full_name.Я просмотрел все папки, чтобы убедиться, что любой метод или атрибут не называется «name», и переименовал его в «full_name».Обновив браузер, я получаю следующую ошибку, которой раньше не видел.Может, кто-нибудь объяснит, что это за ошибка и как я могу ее решить.

Отсутствует шаблон

Отсутствуют пользователи шаблона / создать с помощью {: handlers => [: erb,: rjs,: builder,: rhtml,: rxml],: format =>[: html],: locale => [: en,: en]} в путях просмотра "C: / Users / patterd / Documents / Project / app / views"

Ответы [ 5 ]

43 голосов
/ 27 июня 2011

Эта ошибка возникает, если вы не перенаправляете метод create вашего контроллера.

В случае ошибки вы перенаправляете метод create в контроллере или визуализируете новую форму?

Без перенаправления в методе создания в контроллере вам необходимо создать новый файл с именем create.html.erb. Обычно после успешного создания вы перенаправляете на другую страницу, как показано ниже

def create
  # some object you want to create
  # if the object.save is fine
  #   redirect_to object
  # else
  #   render new with the errors
  # end
end
21 голосов
/ 27 апреля 2012

В моем случае мне пришлось обрабатывать и не отображать представление.

def return_payment
  # do lots of stuff

  head :ok
end
2 голосов
/ 26 июля 2016

Обычно возникает ошибка отсутствующего шаблона - когда у вас нет файла представления этого метода контроллера, или если метод предназначен только для вычислений, у которых нет файла представления, то вы должны отрендерить / перенаправить метод,

Если вы не визуализируете или не перенаправляете метод, он будет искать страницу просмотра текущего имени метода (в вашем случае он будет искать create.html.erb). Так что вам придется визуализировать / перенаправитьметод.

2 голосов
/ 10 января 2013

У меня была та же проблема, и причина была в том, что я случайно оставил другой пустой метод 'create':)

0 голосов
/ 10 ноября 2016

У меня была такая же проблема, и я просто добавил redirect_to, и это сработало!

def update
    @visitor = Visitor.find(params[:id])
    if @visitor.update_attributes(visitor_params)
       flash[:notice] = "Update ok!"
       redirect_to root_path #just added this line and it worked!
    else
       render 'edit'
    end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...