rails sでサーバーを立ち上げ、実際にローカルの環境でuser情報を変更しようとすると、エラーが発生してしまいます。
以下、エラー文
IOError in UsersController#update
closed stream
Extracted source (around line #19): @user = User.find(params[:id]) @user.update(user_params) if @user.update(user_params) redirect_to user_path(@user), notice: "ユーザー情報を更新しました。" else render :edit
原因と思われる、ファイル
user_controller.rb
1class UsersController < ApplicationController 2 def index 3 @users = User.all 4 end 5 6 def show 7 @user = User.find(params[:id]) 8 end 9 10 def edit 11 @user = User.find(params[:id]) 12 if @user != current_user 13 redirect_to user_path(current_user), alert: "不正なアクセスです。" 14 end 15 end 16 def update 17 @user = User.find(params[:id]) 18 @user.update(user_params) 19 if @user.update(user_params) 20 redirect_to user_path(@user), notice: "ユーザー情報を更新しました。" 21 else 22 render :edit 23 end 24 end 25 26 private 27 def user_params 28 params.require(:user).permit(:username, :email, :profile, :profile_image) 29 end 30 31end 32
色々調べましたが、結局何が原因かわからず、どう直せば良いかもわからず‥‥
mac 11.0.1
ruby 2.6.3
Rails 6.0.3.4
あなたの回答
tips
プレビュー