#注意:この記事はガチの初心者がとりあえずの解決法を書いてるだけです.参考にはなりませんからね
これくらい堂々と注意書きすれば大丈夫でしょう.
以下の記事はRuby2.5.0,Rails5.2.0での話です.
#1. 今回のエラー
パラメータの取得について勉強しようと思ったので,「名前をパラメータで取得して返答する」という簡単なやつから始めたよ.一瞬で躓いたよ...
Lesson_Controller.rbで以下の記述をしてブラウザでアクセスしたよ.
Lesson_controller.rb
class LessonController < ApplicationController
def step1
render text: "こんにちは,#{params[:name]}さん"
end
end
routes.rbにも記述は加えてあるよ.
routes.rb
Rails.application.routes.draw do
#中略
get "lesson/:action(/:name)" => "lesson"
#中略
end
アクセスしたURL
http://127.0.0.1:3000/lesson/step1?name=Floym
期待した返答
こんにちは,Floymさん
結果
Template is missing
#2. 原因
参考にしている本がRails4.2で書かれているので,バージョンで変わってしまったと推測する.
こちらを参考にしました.やっぱりバージョンが上がったことで非推奨になったみたい.
#3. 変更
以下のように変更したよ.
render text
をrender plain
へ
Lesson_controller.rb
class LessonController < ApplicationController
def step1
#render text: "こんにちは,#{params[:name]}さん"
render plain: "こんにちは,#{params[:name]}さん"
end
end
#4. 結果
無事に返答がきました!
こんにちは,Floymさん