This should use an else. Otherwise the controller both renders and redirects, it doesn't know to stop after the render.

Also is there an advantage to using a !save instead of juts flipping the logic and avoiding the `!` ?