Railsで"404 - Not Found"などのエラーを出すには?

id:NeoCat:20080531ではroutesを設定してURLの形式をデフォルトから変更してURLを短くしました。
が、分かりやすくなった分、ユーザ自身がいじりやすくなり、存在しないidを伴ってコントローラが呼び出されやすくなりました。(というか自分で何回か「そんなユーザは存在しない」と言われた。)


とりあえず該当するユーザの情報ページが存在しない場合、コントローラ内でIDが存在しないことが分かった場合、404ステータスを返すと良い気がします。この場合、renderメソッドを使って

      render :file=>"#{RAILS_ROOT}/public/404.html", :status=>'404 Not Found' and return unless @user

とすれば、デフォルトで用意されている"The page you were looking for doesn't exist."のメッセージが、それなりにレイアウトされて表示できます。
なお、#RAILS_ROOTというのはRAILSのあるディレクトリへのパスが入ります。