我在控制器中有一个简单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
and @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