Joe*_*nas 1 ruby refactoring ruby-on-rails ruby-on-rails-3
以下是我的UsersController操作代码.我有一个current_user会话对象,如果没有传递给动作,我想使用当前用户的ID.
def show
id = params[:id]
id = current_user.id if id.blank?
@user = User.find(id)
end
Run Code Online (Sandbox Code Playgroud)
我这样做是为了最终我可以拥有可以编辑其他用户信息的管理员.这就是我不使用的原因@user = User.find(current_user.id).
思考/建议吗?我可能也可以做一个三元运算符
params[:id].present? ? id = params[:id] : id = current_user.id
Run Code Online (Sandbox Code Playgroud)
但我认为可能还有更好的方法.
我更喜欢这种方式
def show
@user = User.find(params[:id] || current_user.id)
end
Run Code Online (Sandbox Code Playgroud)