class FrogsController < ApplicationController
before_action :find_frog, only: [:edit, :update, :show, :destroy]
after_action :redirect_home, only: [:update, :create, :destroy]
def index
@frogs = Frog.all
end
def new
@ponds = Pond.all
@frog = Frog.new
end
def create
@frog = Frog.create(frog_params)
end
def edit
@ponds = Pond.all
end
def update
@frog.update_attributes(frog_params)
end
def show
end
def destroy
@frog.destroy
end
private
def find_frog
@frog = Frog.find(params[:id])
end
def frog_params
params.require(:frog).permit(:name, :color, :pond_id)
end
def redirect_home
redirect_to frogs_path
end
end
こんにちは、みんな。Railsの更新ルートがリダイレクトのafter_action(下部のカスタムメイドの方法)を家に持ち帰れない理由を誰かが私に説明できるかどうか疑問に思っていました。after_action に update を含めると発生するエラーは、「Missing template frogs/update」です。これにより、 update メソッド内に redirect_to frogs_path を手動で追加する必要があります。
ありがとう!