諸説ありますが、ユーザーがみえる範囲での Validation は JavaScript でやればよいのが現状だし、いずれにせよ Model における Validation は必要なので、Controller で Validation する必要性がかんじられない。

よって、現在では Validation は JavaScript でおこない、Model では引数を確認して問題があれば Exception を throw する、というのがただしいように思います。