0

コントローラーに簡単なupdateアクションがあります:Rails 4

#more stuff here
def update
  if @user.update(user_params)
    flash[:notice] = "User #{@user.username} updated"
    redirect_to users_path
  else
    render 'edit'
  end
end
private
def set_user
  @user = User.find(params[:id])
end

ただし、RubyMine は次のことについて警告し@user.updateてい@user.usernameます。

このインスペクションは、最初の .find または .new の後に、コントローラー アクションに複数のモデル メソッド呼び出しが含まれている場合に警告します。モデル クラス内にすべてのビジネス ロジックを実装し、単一のメソッドを使用してそれにアクセスすることをお勧めします。

ここはわかりませんmore than one model method call。誰かが何が起こっているのか説明できますか?

編集-create警告なしのアクションに似たようなものがあるので、何か関係があると思いuser_paramsます...

def create
  if @user.save
    flash[:notice] = "User #{@user.username} created"
    redirect_to users_path
  else
    render 'new'
  end
end
4

1 に答える 1