Отсутствует шаблон для этого формата и варианта запроса
Я новичок в Ruby on Rails и пытаюсь понять, как работает MVC.
Я сделал следующее:
rails new bubblesman
rails generate controller bubble
в моем контроллере пузырьков я создал метод следующим образом:
def available
puts "YEP!!!!!!"
end
Я поместил в файл маршрутов следующее:
'welcome' => 'bubble#available'
Я перехожу к http://localhost:3000/welcome
Я получаю следующую ошибку:
ActionController::UnknownFormat (BubbleController#available is missing a template for this request format and variant.
request.formats: ["text/html"]
request.variant: []
NOTE! For XHR/Ajax or API requests, this action would normally respond with 204 No Content: an empty white screen. Since you're loading it in a web browser, we assume that you expected to actually render a template, not… nothing, so we're showing an error to be extra-clear. If you expect 204 No Content, carry on. That what you'll get from an XHR or API request. Give it a shot.):
то, что я тоже не понимаю, это если я поместил это в мой вспомогательный контроллер вместо моего основного контроллера, все это прекрасно работает.
Ответы
Ответ 1
вам нужно создать файл available.html.erb
в каталоге views/bubble/
. Когда маршрут приведет вас к этому действию, он также переместит вас в это представление, поэтому, если вы поместите:
<h2>YEP!!!!</h2>
как единственная строка в этом файле, он должен вернуть это вам на веб-странице.
В будущем вы можете использовать rails g scaffold bubbles
, и это создаст большинство файлов (MVC) и маршрутов для вас.