条件文に`!`は可能な限り使わないようにしてください。
`- if can? :update, item` を使って、いま`else`の中にあるものを先に持ってきてください。